diff --git a/compiler/testData/diagnostics/tests/platformTypes/methodCall/int.kt b/compiler/testData/diagnostics/tests/platformTypes/methodCall/int.kt new file mode 100644 index 00000000000..091da1de6db --- /dev/null +++ b/compiler/testData/diagnostics/tests/platformTypes/methodCall/int.kt @@ -0,0 +1,16 @@ +// FILE: p/J.java + +package p; + +public class J { + public void _int(int s) {} +} + +// FILE: k.kt + +import p.* + +fun test() { + J()._int(1) + J()._int(null) +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/platformTypes/methodCall/intArray.kt b/compiler/testData/diagnostics/tests/platformTypes/methodCall/intArray.kt new file mode 100644 index 00000000000..d79113f9023 --- /dev/null +++ b/compiler/testData/diagnostics/tests/platformTypes/methodCall/intArray.kt @@ -0,0 +1,16 @@ +// FILE: p/J.java + +package p; + +public class J { + public void intArr(int[] s) {} +} + +// FILE: k.kt + +import p.* + +fun test(ia: IntArray) { + J().intArr(ia) + J().intArr(null) +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/platformTypes/methodCall/list.kt b/compiler/testData/diagnostics/tests/platformTypes/methodCall/list.kt new file mode 100644 index 00000000000..a1f4cf524f8 --- /dev/null +++ b/compiler/testData/diagnostics/tests/platformTypes/methodCall/list.kt @@ -0,0 +1,18 @@ +// FILE: p/J.java + +package p; + +public class J { + public void list(java.util.List s) {} +} + +// FILE: k.kt + +import p.* + +fun test(ls: List, mls: MutableList, lsn: List, mlsn: MutableList?) { + J().list(ls) + J().list(mls) + J().list(lsn) + J().list(mlsn) +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/platformTypes/methodCall/objectArray.kt b/compiler/testData/diagnostics/tests/platformTypes/methodCall/objectArray.kt new file mode 100644 index 00000000000..fd300ac62ea --- /dev/null +++ b/compiler/testData/diagnostics/tests/platformTypes/methodCall/objectArray.kt @@ -0,0 +1,22 @@ +// FILE: p/J.java + +package p; + +public class J { + public void arr(Object[] s) {} +} + +// FILE: k.kt + +import p.* + +fun test( + aa: Array, + sa: Array, + san: Array +) { + J().arr(null) + J().arr(aa) + J().arr(sa) + J().arr(san) +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/platformTypes/methodCall/string.kt b/compiler/testData/diagnostics/tests/platformTypes/methodCall/string.kt new file mode 100644 index 00000000000..1b0f1370754 --- /dev/null +++ b/compiler/testData/diagnostics/tests/platformTypes/methodCall/string.kt @@ -0,0 +1,16 @@ +// FILE: p/J.java + +package p; + +public class J { + public void str(J s) {} +} + +// FILE: k.kt + +import p.* + +fun test() { + J().str(J()) + J().str(null) +} \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java index 855ec151f77..eaaacc7410f 100644 --- a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java @@ -35,7 +35,7 @@ import java.util.regex.Pattern; public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest { @TestMetadata("compiler/testData/diagnostics/tests") @TestDataPath("$PROJECT_ROOT") - @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.Delegation.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.NullabilityAndSmartCasts.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}) + @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.Delegation.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.NullabilityAndSmartCasts.class, Tests.NullableTypes.class, Tests.Numbers.class, Tests.Objects.class, Tests.OperatorsOverloading.class, Tests.Overload.class, Tests.Override.class, Tests.PlatformTypes.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}) @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class) public static class Tests extends AbstractJetDiagnosticsTest { @TestMetadata("Abstract.kt") @@ -7686,6 +7686,57 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest { } + @TestMetadata("compiler/testData/diagnostics/tests/platformTypes") + @TestDataPath("$PROJECT_ROOT") + @InnerTestClasses({PlatformTypes.MethodCall.class}) + @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class) + public static class PlatformTypes extends AbstractJetDiagnosticsTest { + public void testAllFilesPresentInPlatformTypes() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/tests/platformTypes"), Pattern.compile("^(.+)\\.kt$"), true); + } + + @TestMetadata("compiler/testData/diagnostics/tests/platformTypes/methodCall") + @TestDataPath("$PROJECT_ROOT") + @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class) + public static class MethodCall extends AbstractJetDiagnosticsTest { + public void testAllFilesPresentInMethodCall() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/tests/platformTypes/methodCall"), Pattern.compile("^(.+)\\.kt$"), true); + } + + @TestMetadata("int.kt") + public void testInt() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/platformTypes/methodCall/int.kt"); + doTest(fileName); + } + + @TestMetadata("intArray.kt") + public void testIntArray() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/platformTypes/methodCall/intArray.kt"); + doTest(fileName); + } + + @TestMetadata("list.kt") + public void testList() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/platformTypes/methodCall/list.kt"); + doTest(fileName); + } + + @TestMetadata("objectArray.kt") + public void testObjectArray() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/platformTypes/methodCall/objectArray.kt"); + doTest(fileName); + } + + @TestMetadata("string.kt") + public void testString() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/platformTypes/methodCall/string.kt"); + doTest(fileName); + } + + } + + } + @TestMetadata("compiler/testData/diagnostics/tests/recovery") @TestDataPath("$PROJECT_ROOT") @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class)