Resolve invoke on class objects and enum entries
Added FakeCallableDescriptorForObject to make a resolved call with object as variable in 'variable as function call' #KT-4321 Fixed #KT-4863 Fixed
This commit is contained in:
@@ -27,7 +27,7 @@ import java.util.regex.Pattern;
|
||||
|
||||
/** This class is generated by {@link org.jetbrains.jet.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */
|
||||
@SuppressWarnings("all")
|
||||
@InnerTestClasses({JetDiagnosticsTestGenerated.Tests.class, JetDiagnosticsTestGenerated.Script.class, JetDiagnosticsTestGenerated.TailRecursion.class})
|
||||
@InnerTestClasses({JetDiagnosticsTestGenerated.Tests.class, JetDiagnosticsTestGenerated.Script.class, JetDiagnosticsTestGenerated.TailRecursion.class, JetDiagnosticsTestGenerated.OnObjects.class})
|
||||
public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
|
||||
@TestMetadata("compiler/testData/diagnostics/tests")
|
||||
@InnerTestClasses({Tests.Annotations.class, Tests.BackingField.class, Tests.Cast.class, Tests.CheckArguments.class, Tests.ClassObjects.class, Tests.ControlFlowAnalysis.class, Tests.ControlStructures.class, Tests.CyclicHierarchy.class, Tests.DataClasses.class, Tests.DataFlow.class, Tests.DataFlowInfoTraversal.class, Tests.DeclarationChecks.class, Tests.DelegatedProperty.class, Tests.Deparenthesize.class, Tests.DuplicateJvmSignature.class, Tests.Enum.class, Tests.Evaluate.class, Tests.Extensions.class, Tests.FunctionLiterals.class, Tests.Generics.class, Tests.Imports.class, Tests.IncompleteCode.class, Tests.Inference.class, Tests.Infos.class, Tests.Inline.class, Tests.Inner.class, Tests.J_k.class, Tests.Jdk_annotations.class, Tests.Labels.class, Tests.Library.class, Tests.Multimodule.class, Tests.NamedArguments.class, Tests.NullabilityAndAutoCasts.class, Tests.NullableTypes.class, Tests.Numbers.class, Tests.Objects.class, Tests.OperatorsOverloading.class, Tests.Overload.class, Tests.Override.class, Tests.Recovery.class, Tests.Redeclarations.class, Tests.Regressions.class, Tests.Resolve.class, Tests.Scopes.class, Tests.SenselessComparison.class, Tests.Shadowing.class, Tests.SmartCasts.class, Tests.Substitutions.class, Tests.Subtyping.class, Tests.Suppress.class, Tests.ThisAndSuper.class, Tests.TraitWithRequired.class, Tests.Typedefs.class, Tests.Unit.class, Tests.Varargs.class, Tests.When.class})
|
||||
@@ -7047,6 +7047,11 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
|
||||
doTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4204-completeNestedCallsForInvoke.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt4321InvokeOnEnum.kt")
|
||||
public void testKt4321InvokeOnEnum() throws Exception {
|
||||
doTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4321InvokeOnEnum.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("valNamedInvoke.kt")
|
||||
public void testValNamedInvoke() throws Exception {
|
||||
doTest("compiler/testData/diagnostics/tests/resolve/invoke/valNamedInvoke.kt");
|
||||
@@ -8410,11 +8415,70 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
|
||||
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/codegen/box/functions/invoke/onObjects")
|
||||
public static class OnObjects extends AbstractJetDiagnosticsTest {
|
||||
public void testAllFilesPresentInOnObjects() throws Exception {
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions/invoke/onObjects"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObject1.kt")
|
||||
public void testInvokeOnClassObject1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObject1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObject2.kt")
|
||||
public void testInvokeOnClassObject2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObject2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObjectOfNestedClass1.kt")
|
||||
public void testInvokeOnClassObjectOfNestedClass1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObjectOfNestedClass1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObjectOfNestedClass2.kt")
|
||||
public void testInvokeOnClassObjectOfNestedClass2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObjectOfNestedClass2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnEnum1.kt")
|
||||
public void testInvokeOnEnum1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnEnum1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnEnum2.kt")
|
||||
public void testInvokeOnEnum2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnEnum2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnImportedEnum1.kt")
|
||||
public void testInvokeOnImportedEnum1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnImportedEnum1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnImportedEnum2.kt")
|
||||
public void testInvokeOnImportedEnum2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnImportedEnum2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnObject1.kt")
|
||||
public void testInvokeOnObject1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnObject1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnObject2.kt")
|
||||
public void testInvokeOnObject2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnObject2.kt");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static Test suite() {
|
||||
TestSuite suite = new TestSuite("JetDiagnosticsTestGenerated");
|
||||
suite.addTest(Tests.innerSuite());
|
||||
suite.addTestSuite(Script.class);
|
||||
suite.addTestSuite(TailRecursion.class);
|
||||
suite.addTestSuite(OnObjects.class);
|
||||
return suite;
|
||||
}
|
||||
}
|
||||
|
||||
+66
-1
@@ -2672,6 +2672,7 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/codegen/box/functions/invoke")
|
||||
@InnerTestClasses({Invoke.OnObjects.class})
|
||||
public static class Invoke extends AbstractBlackBoxCodegenTest {
|
||||
public void testAllFilesPresentInInvoke() throws Exception {
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions/invoke"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||
@@ -2732,6 +2733,70 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/kt3822invokeOnThis.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/codegen/box/functions/invoke/onObjects")
|
||||
public static class OnObjects extends AbstractBlackBoxCodegenTest {
|
||||
public void testAllFilesPresentInOnObjects() throws Exception {
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions/invoke/onObjects"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObject1.kt")
|
||||
public void testInvokeOnClassObject1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObject1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObject2.kt")
|
||||
public void testInvokeOnClassObject2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObject2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObjectOfNestedClass1.kt")
|
||||
public void testInvokeOnClassObjectOfNestedClass1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObjectOfNestedClass1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObjectOfNestedClass2.kt")
|
||||
public void testInvokeOnClassObjectOfNestedClass2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnClassObjectOfNestedClass2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnEnum1.kt")
|
||||
public void testInvokeOnEnum1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnEnum1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnEnum2.kt")
|
||||
public void testInvokeOnEnum2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnEnum2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnImportedEnum1.kt")
|
||||
public void testInvokeOnImportedEnum1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnImportedEnum1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnImportedEnum2.kt")
|
||||
public void testInvokeOnImportedEnum2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnImportedEnum2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnObject1.kt")
|
||||
public void testInvokeOnObject1() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnObject1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnObject2.kt")
|
||||
public void testInvokeOnObject2() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/functions/invoke/onObjects/invokeOnObject2.kt");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static Test innerSuite() {
|
||||
TestSuite suite = new TestSuite("Invoke");
|
||||
suite.addTestSuite(Invoke.class);
|
||||
suite.addTestSuite(OnObjects.class);
|
||||
return suite;
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/codegen/box/functions/localFunctions")
|
||||
@@ -2993,7 +3058,7 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
|
||||
public static Test innerSuite() {
|
||||
TestSuite suite = new TestSuite("Functions");
|
||||
suite.addTestSuite(Functions.class);
|
||||
suite.addTestSuite(Invoke.class);
|
||||
suite.addTest(Invoke.innerSuite());
|
||||
suite.addTestSuite(LocalFunctions.class);
|
||||
suite.addTestSuite(TailRecursion.class);
|
||||
return suite;
|
||||
|
||||
@@ -314,6 +314,36 @@ public class ResolvedCallsTestGenerated extends AbstractResolvedCallsTest {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/implicitReceiverForInvoke.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObject1.kt")
|
||||
public void testInvokeOnClassObject1() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/invokeOnClassObject1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnClassObject2.kt")
|
||||
public void testInvokeOnClassObject2() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/invokeOnClassObject2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnEnumEntry1.kt")
|
||||
public void testInvokeOnEnumEntry1() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/invokeOnEnumEntry1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnEnumEntry2.kt")
|
||||
public void testInvokeOnEnumEntry2() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/invokeOnEnumEntry2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnObject1.kt")
|
||||
public void testInvokeOnObject1() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/invokeOnObject1.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("invokeOnObject2.kt")
|
||||
public void testInvokeOnObject2() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/invokeOnObject2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("receiverArgumentAsReceiverForInvoke.kt")
|
||||
public void testReceiverArgumentAsReceiverForInvoke() throws Exception {
|
||||
doTest("compiler/testData/resolvedCalls/invoke/receiverArgumentAsReceiverForInvoke.kt");
|
||||
|
||||
Reference in New Issue
Block a user