mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
PY-80002 Add more tests on forward references in annotations from various scopes and in different versions
GitOrigin-RevId: cfe4d2ebbc7ff83f5d206ecc2569b3ba4b70a483
This commit is contained in:
committed by
intellij-monorepo-bot
parent
761c8be02a
commit
172d60f843
@@ -1374,7 +1374,23 @@ public abstract class PyCommonResolveTest extends PyCommonResolveTestCase {
|
||||
}
|
||||
|
||||
// PY-28228
|
||||
public void testReturnAnnotationForwardReference() {
|
||||
public void testMethodReturnAnnotationForwardReferenceBefore314() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.PYTHON37,
|
||||
() -> assertUnresolved()
|
||||
);
|
||||
}
|
||||
|
||||
// PY-28228
|
||||
public void testFunctionReturnAnnotationForwardReferenceBefore314() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.PYTHON37,
|
||||
() -> assertUnresolved()
|
||||
);
|
||||
}
|
||||
|
||||
// PY-28228
|
||||
public void testMethodReturnAnnotationForwardReferenceBefore314WithFromFutureImportAnnotations() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.PYTHON37,
|
||||
() -> assertResolvesTo(PyClass.class, "A")
|
||||
@@ -1382,13 +1398,37 @@ public abstract class PyCommonResolveTest extends PyCommonResolveTestCase {
|
||||
}
|
||||
|
||||
// PY-28228
|
||||
public void testParameterAnnotationForwardReference() {
|
||||
public void testFunctionReturnAnnotationForwardReferenceBefore314WithFromFutureImportAnnotations() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.PYTHON37,
|
||||
() -> assertResolvesTo(PyClass.class, "A")
|
||||
);
|
||||
}
|
||||
|
||||
// PY-28228
|
||||
public void testMethodParameterAnnotationForwardReferenceBefore314WithFromFutureImportAnnotations() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.PYTHON37,
|
||||
() -> assertResolvesTo(PyClass.class, "A")
|
||||
);
|
||||
}
|
||||
|
||||
// PY-80002
|
||||
public void testMethodReturnAnnotationForwardReference() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.getLatest(),
|
||||
() -> assertResolvesTo(PyClass.class, "A")
|
||||
);
|
||||
}
|
||||
|
||||
// PY-80002
|
||||
public void testFunctionReturnAnnotationForwardReference() {
|
||||
runWithLanguageLevel(
|
||||
LanguageLevel.getLatest(),
|
||||
() -> assertResolvesTo(PyClass.class, "A")
|
||||
);
|
||||
}
|
||||
|
||||
// PY-19890
|
||||
public void testUnboundVariableOnClassLevelDeclaredBelowAsTarget() {
|
||||
final PyTargetExpression foo = assertResolvesTo(PyTargetExpression.class, "foo");
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
def create() -> A:
|
||||
# <ref>
|
||||
pass
|
||||
|
||||
class A:
|
||||
pass
|
||||
@@ -0,0 +1,6 @@
|
||||
def create() -> A:
|
||||
# <ref>
|
||||
pass
|
||||
|
||||
class A:
|
||||
pass
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
from __future__ import annotations
|
||||
|
||||
def create() -> A:
|
||||
# <ref>
|
||||
pass
|
||||
|
||||
class A:
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
class B:
|
||||
def create(self) -> A:
|
||||
# <ref>
|
||||
pass
|
||||
|
||||
class A:
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
class B:
|
||||
def create(self) -> A:
|
||||
# <ref>
|
||||
pass
|
||||
|
||||
class A:
|
||||
pass
|
||||
Reference in New Issue
Block a user