diff --git a/python/python-common-tests/com/jetbrains/python/PyCommonResolveTest.java b/python/python-common-tests/com/jetbrains/python/PyCommonResolveTest.java index 77b126b38aad..884192bd4e23 100644 --- a/python/python-common-tests/com/jetbrains/python/PyCommonResolveTest.java +++ b/python/python-common-tests/com/jetbrains/python/PyCommonResolveTest.java @@ -1429,6 +1429,14 @@ public abstract class PyCommonResolveTest extends PyCommonResolveTestCase { ); } + public void testTopLevelNewStyleTypeAliasForwardReference() { + assertResolvesTo(PyClass.class, "MyClass"); + } + + public void testClassLevelNewStyleTypeAliasForwardReference() { + assertResolvesTo(PyClass.class, "MyClass"); + } + // PY-19890 public void testUnboundVariableOnClassLevelDeclaredBelowAsTarget() { final PyTargetExpression foo = assertResolvesTo(PyTargetExpression.class, "foo"); diff --git a/python/testData/resolve/ClassLevelNewStyleTypeAliasForwardReference.py b/python/testData/resolve/ClassLevelNewStyleTypeAliasForwardReference.py new file mode 100644 index 000000000000..b0548fee4d5e --- /dev/null +++ b/python/testData/resolve/ClassLevelNewStyleTypeAliasForwardReference.py @@ -0,0 +1,6 @@ +class C: + type Alias = list[MyClass] + # + +class MyClass: + pass diff --git a/python/testData/resolve/TopLevelNewStyleTypeAliasForwardReference.py b/python/testData/resolve/TopLevelNewStyleTypeAliasForwardReference.py new file mode 100644 index 000000000000..6ae5cf94f3fa --- /dev/null +++ b/python/testData/resolve/TopLevelNewStyleTypeAliasForwardReference.py @@ -0,0 +1,5 @@ +type Alias = list[MyClass] +# + +class MyClass: + pass