From 1e169b0838912ca4fe5099a3ee5054a59ab3f3a2 Mon Sep 17 00:00:00 2001 From: Anton Bannykh Date: Wed, 6 Jun 2018 16:23:23 +0300 Subject: [PATCH] JS_IR: add common codegen box tests (same as for old backend) --- .../kotlin/generators/util/coroutines.kt | 2 +- .../generators/tests/GenerateJsTests.kt | 28 + ...CallableReferenceInlineTestsGenerated.java | 179 + .../IrEnumValuesInlineTestsGenerated.java | 96 + .../IrInlineDefaultValuesTestsGenerated.java | 425 + .../IrJsCodegenBoxTestGenerated.java | 19489 ++++++++++++++++ .../semantics/IrNoInlineTestsGenerated.java | 66 + .../IrNonLocalReturnsTestGenerated.java | 457 + ...PropertyAccessorsInlineTestsGenerated.java | 86 + .../abstractClassesForGeneratedTests.kt | 26 + 10 files changed, 20853 insertions(+), 1 deletion(-) create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrCallableReferenceInlineTestsGenerated.java create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrEnumValuesInlineTestsGenerated.java create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrInlineDefaultValuesTestsGenerated.java create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrJsCodegenBoxTestGenerated.java create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNoInlineTestsGenerated.java create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNonLocalReturnsTestGenerated.java create mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrPropertyAccessorsInlineTestsGenerated.java diff --git a/generators/test-generator/tests/org/jetbrains/kotlin/generators/util/coroutines.kt b/generators/test-generator/tests/org/jetbrains/kotlin/generators/util/coroutines.kt index b03f1680a41..8d8e1e76aa2 100644 --- a/generators/test-generator/tests/org/jetbrains/kotlin/generators/util/coroutines.kt +++ b/generators/test-generator/tests/org/jetbrains/kotlin/generators/util/coroutines.kt @@ -72,7 +72,7 @@ fun createCommonCoroutinesTestMethodModels( targetBackend: TargetBackend, skipIgnored: Boolean ): Collection { - return if (targetBackend == TargetBackend.JS) + return if (targetBackend == TargetBackend.JS || targetBackend == TargetBackend.JS_IR) listOf( CoroutinesTestModel( rootDir, diff --git a/js/js.tests/test/org/jetbrains/kotlin/generators/tests/GenerateJsTests.kt b/js/js.tests/test/org/jetbrains/kotlin/generators/tests/GenerateJsTests.kt index 071b0ccbc8f..0ee22674f28 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/generators/tests/GenerateJsTests.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/generators/tests/GenerateJsTests.kt @@ -48,30 +48,58 @@ fun main(args: Array) { model("codegen/box", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/box", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/boxInline/nonLocalReturns/", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/boxInline/nonLocalReturns/", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/boxInline/property/", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/boxInline/property/", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/boxInline/noInline/", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/boxInline/noInline/", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/boxInline/callableReference/", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/boxInline/callableReference/", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/boxInline/enum/", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/boxInline/enum/", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/boxInline/defaultValues/", targetBackend = TargetBackend.JS) } + testClass { + model("codegen/boxInline/defaultValues/", targetBackend = TargetBackend.JS_IR) + } + testClass { model("codegen/box/arrays", targetBackend = TargetBackend.JS) } diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrCallableReferenceInlineTestsGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrCallableReferenceInlineTestsGenerated.java new file mode 100644 index 00000000000..d2be65fb662 --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrCallableReferenceInlineTestsGenerated.java @@ -0,0 +1,179 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/boxInline/callableReference") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrCallableReferenceInlineTestsGenerated extends AbstractIrCallableReferenceInlineTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCallableReference() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/callableReference"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("classLevel.kt") + public void testClassLevel() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/classLevel.kt"); + } + + @TestMetadata("classLevel2.kt") + public void testClassLevel2() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/classLevel2.kt"); + } + + @TestMetadata("constructor.kt") + public void testConstructor() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/constructor.kt"); + } + + @TestMetadata("intrinsic.kt") + public void testIntrinsic() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/intrinsic.kt"); + } + + @TestMetadata("kt15449.kt") + public void testKt15449() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/kt15449.kt"); + } + + @TestMetadata("kt16411.kt") + public void testKt16411() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/kt16411.kt"); + } + + @TestMetadata("propertyIntrinsic.kt") + public void testPropertyIntrinsic() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/propertyIntrinsic.kt"); + } + + @TestMetadata("propertyReference.kt") + public void testPropertyReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/propertyReference.kt"); + } + + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/topLevel.kt"); + } + + @TestMetadata("topLevelExtension.kt") + public void testTopLevelExtension() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/topLevelExtension.kt"); + } + + @TestMetadata("topLevelProperty.kt") + public void testTopLevelProperty() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/topLevelProperty.kt"); + } + + @TestMetadata("compiler/testData/codegen/boxInline/callableReference/bound") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Bound extends AbstractIrCallableReferenceInlineTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBound() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/callableReference/bound"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("classProperty.kt") + public void testClassProperty() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/classProperty.kt"); + } + + @TestMetadata("emptyLhsFunction.kt") + public void testEmptyLhsFunction() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/emptyLhsFunction.kt"); + } + + @TestMetadata("expression.kt") + public void testExpression() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/expression.kt"); + } + + @TestMetadata("extensionReceiver.kt") + public void testExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/extensionReceiver.kt"); + } + + @TestMetadata("filter.kt") + public void testFilter() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/filter.kt"); + } + + @TestMetadata("intrinsic.kt") + public void testIntrinsic() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/intrinsic.kt"); + } + + @TestMetadata("kt18728.kt") + public void testKt18728() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/kt18728.kt"); + } + + @TestMetadata("kt18728_2.kt") + public void testKt18728_2() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/kt18728_2.kt"); + } + + @TestMetadata("kt18728_3.kt") + public void testKt18728_3() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/kt18728_3.kt"); + } + + @TestMetadata("kt18728_4.kt") + public void testKt18728_4() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/kt18728_4.kt"); + } + + @TestMetadata("map.kt") + public void testMap() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/map.kt"); + } + + @TestMetadata("mixed.kt") + public void testMixed() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/mixed.kt"); + } + + @TestMetadata("objectProperty.kt") + public void testObjectProperty() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/objectProperty.kt"); + } + + @TestMetadata("propertyImportedFromObject.kt") + public void testPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/propertyImportedFromObject.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/simple.kt"); + } + + @TestMetadata("topLevelExtensionProperty.kt") + public void testTopLevelExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/boxInline/callableReference/bound/topLevelExtensionProperty.kt"); + } + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrEnumValuesInlineTestsGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrEnumValuesInlineTestsGenerated.java new file mode 100644 index 00000000000..a6b80d96ab6 --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrEnumValuesInlineTestsGenerated.java @@ -0,0 +1,96 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/boxInline/enum") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrEnumValuesInlineTestsGenerated extends AbstractIrEnumValuesInlineTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEnum() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/enum"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt10569.kt") + public void testKt10569() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/kt10569.kt"); + } + + @TestMetadata("kt18254.kt") + public void testKt18254() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/kt18254.kt"); + } + + @TestMetadata("valueOf.kt") + public void testValueOf() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valueOf.kt"); + } + + @TestMetadata("valueOfCapturedType.kt") + public void testValueOfCapturedType() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valueOfCapturedType.kt"); + } + + @TestMetadata("valueOfChain.kt") + public void testValueOfChain() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valueOfChain.kt"); + } + + @TestMetadata("valueOfChainCapturedType.kt") + public void testValueOfChainCapturedType() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valueOfChainCapturedType.kt"); + } + + @TestMetadata("valueOfNonReified.kt") + public void testValueOfNonReified() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valueOfNonReified.kt"); + } + + @TestMetadata("values.kt") + public void testValues() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/values.kt"); + } + + @TestMetadata("valuesAsArray.kt") + public void testValuesAsArray() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valuesAsArray.kt"); + } + + @TestMetadata("valuesCapturedType.kt") + public void testValuesCapturedType() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valuesCapturedType.kt"); + } + + @TestMetadata("valuesChain.kt") + public void testValuesChain() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valuesChain.kt"); + } + + @TestMetadata("valuesChainCapturedType.kt") + public void testValuesChainCapturedType() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valuesChainCapturedType.kt"); + } + + @TestMetadata("valuesNonReified.kt") + public void testValuesNonReified() throws Exception { + runTest("compiler/testData/codegen/boxInline/enum/valuesNonReified.kt"); + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrInlineDefaultValuesTestsGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrInlineDefaultValuesTestsGenerated.java new file mode 100644 index 00000000000..e4ed3aa9fa0 --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrInlineDefaultValuesTestsGenerated.java @@ -0,0 +1,425 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/boxInline/defaultValues") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrInlineDefaultValuesTestsGenerated extends AbstractIrInlineDefaultValuesTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("33Parameters.kt") + public void test33Parameters() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/33Parameters.kt"); + } + + @TestMetadata("33ParametersInConstructor.kt") + public void test33ParametersInConstructor() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/33ParametersInConstructor.kt"); + } + + public void testAllFilesPresentInDefaultValues() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/defaultValues"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("defaultInExtension.kt") + public void testDefaultInExtension() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/defaultInExtension.kt"); + } + + @TestMetadata("defaultMethod.kt") + public void testDefaultMethod() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/defaultMethod.kt"); + } + + @TestMetadata("defaultMethodInClass.kt") + public void testDefaultMethodInClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/defaultMethodInClass.kt"); + } + + @TestMetadata("defaultParamRemapping.kt") + public void testDefaultParamRemapping() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/defaultParamRemapping.kt"); + } + + @TestMetadata("inlineInDefaultParameter.kt") + public void testInlineInDefaultParameter() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/inlineInDefaultParameter.kt"); + } + + @TestMetadata("inlineLambdaInNoInlineDefault.kt") + public void testInlineLambdaInNoInlineDefault() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/inlineLambdaInNoInlineDefault.kt"); + } + + @TestMetadata("kt11479.kt") + public void testKt11479() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt11479.kt"); + } + + @TestMetadata("kt11479InlinedDefaultParameter.kt") + public void testKt11479InlinedDefaultParameter() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt11479InlinedDefaultParameter.kt"); + } + + @TestMetadata("kt14564.kt") + public void testKt14564() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt14564.kt"); + } + + @TestMetadata("kt14564_2.kt") + public void testKt14564_2() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt14564_2.kt"); + } + + @TestMetadata("kt18689.kt") + public void testKt18689() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt18689.kt"); + } + + @TestMetadata("kt18689_2.kt") + public void testKt18689_2() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt18689_2.kt"); + } + + @TestMetadata("kt18689_3.kt") + public void testKt18689_3() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt18689_3.kt"); + } + + @TestMetadata("kt18689_4.kt") + public void testKt18689_4() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt18689_4.kt"); + } + + @TestMetadata("kt5685.kt") + public void testKt5685() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/kt5685.kt"); + } + + @TestMetadata("simpleDefaultMethod.kt") + public void testSimpleDefaultMethod() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/simpleDefaultMethod.kt"); + } + + @TestMetadata("varArgNoInline.kt") + public void testVarArgNoInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/varArgNoInline.kt"); + } + + @TestMetadata("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LambdaInlining extends AbstractIrInlineDefaultValuesTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLambdaInlining() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("checkLambdaClassIsPresent.kt") + public void testCheckLambdaClassIsPresent() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/checkLambdaClassIsPresent.kt"); + } + + @TestMetadata("checkLambdaClassesArePresent.kt") + public void testCheckLambdaClassesArePresent() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/checkLambdaClassesArePresent.kt"); + } + + @TestMetadata("checkObjectClassIsPresent.kt") + public void testCheckObjectClassIsPresent() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/checkObjectClassIsPresent.kt"); + } + + @TestMetadata("checkStaticLambdaClassIsPresent.kt") + public void testCheckStaticLambdaClassIsPresent() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/checkStaticLambdaClassIsPresent.kt"); + } + + @TestMetadata("checkStaticLambdaClassesArePresent.kt") + public void testCheckStaticLambdaClassesArePresent() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/checkStaticLambdaClassesArePresent.kt"); + } + + @TestMetadata("checkStaticObjectClassIsPresent.kt") + public void testCheckStaticObjectClassIsPresent() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/checkStaticObjectClassIsPresent.kt"); + } + + @TestMetadata("defaultCallInDefaultLambda.kt") + public void testDefaultCallInDefaultLambda() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/defaultCallInDefaultLambda.kt"); + } + + @TestMetadata("defaultLambdaInNoInline.kt") + public void testDefaultLambdaInNoInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/defaultLambdaInNoInline.kt"); + } + + @TestMetadata("genericLambda.kt") + public void testGenericLambda() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/genericLambda.kt"); + } + + @TestMetadata("instanceCapuredInClass.kt") + public void testInstanceCapuredInClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/instanceCapuredInClass.kt"); + } + + @TestMetadata("instanceCapuredInInterface.kt") + public void testInstanceCapuredInInterface() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/instanceCapuredInInterface.kt"); + } + + @TestMetadata("jvmStaticDefault.kt") + public void testJvmStaticDefault() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/jvmStaticDefault.kt"); + } + + @TestMetadata("kt21827.kt") + public void testKt21827() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/kt21827.kt"); + } + + @TestMetadata("noInline.kt") + public void testNoInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/noInline.kt"); + } + + @TestMetadata("nonDefaultInlineInNoInline.kt") + public void testNonDefaultInlineInNoInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/nonDefaultInlineInNoInline.kt"); + } + + @TestMetadata("receiverClash.kt") + public void testReceiverClash() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/receiverClash.kt"); + } + + @TestMetadata("receiverClash2.kt") + public void testReceiverClash2() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/receiverClash2.kt"); + } + + @TestMetadata("receiverClashInClass.kt") + public void testReceiverClashInClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/receiverClashInClass.kt"); + } + + @TestMetadata("receiverClashInClass2.kt") + public void testReceiverClashInClass2() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/receiverClashInClass2.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simple.kt"); + } + + @TestMetadata("simpleErased.kt") + public void testSimpleErased() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleErased.kt"); + } + + @TestMetadata("simpleErasedStaticInstance.kt") + public void testSimpleErasedStaticInstance() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleErasedStaticInstance.kt"); + } + + @TestMetadata("simpleExtension.kt") + public void testSimpleExtension() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleExtension.kt"); + } + + @TestMetadata("simpleGeneric.kt") + public void testSimpleGeneric() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleGeneric.kt"); + } + + @TestMetadata("simpleStaticInstance.kt") + public void testSimpleStaticInstance() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/simpleStaticInstance.kt"); + } + + @TestMetadata("thisClash.kt") + public void testThisClash() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/thisClash.kt"); + } + + @TestMetadata("thisClashInClass.kt") + public void testThisClashInClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/thisClashInClass.kt"); + } + + @TestMetadata("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CallableReferences extends AbstractIrInlineDefaultValuesTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCallableReferences() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boundFunctionReference.kt") + public void testBoundFunctionReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/boundFunctionReference.kt"); + } + + @TestMetadata("boundFunctionReferenceOnInt.kt") + public void testBoundFunctionReferenceOnInt() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/boundFunctionReferenceOnInt.kt"); + } + + @TestMetadata("boundFunctionReferenceOnLong.kt") + public void testBoundFunctionReferenceOnLong() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/boundFunctionReferenceOnLong.kt"); + } + + @TestMetadata("boundPropertyReference.kt") + public void testBoundPropertyReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/boundPropertyReference.kt"); + } + + @TestMetadata("boundPropertyReferenceOnInt.kt") + public void testBoundPropertyReferenceOnInt() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/boundPropertyReferenceOnInt.kt"); + } + + @TestMetadata("boundPropertyReferenceOnLong.kt") + public void testBoundPropertyReferenceOnLong() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/boundPropertyReferenceOnLong.kt"); + } + + @TestMetadata("constuctorReference.kt") + public void testConstuctorReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/constuctorReference.kt"); + } + + @TestMetadata("functionImportedFromObject.kt") + public void testFunctionImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/functionImportedFromObject.kt"); + } + + @TestMetadata("functionReference.kt") + public void testFunctionReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/functionReference.kt"); + } + + @TestMetadata("functionReferenceFromClass.kt") + public void testFunctionReferenceFromClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/functionReferenceFromClass.kt"); + } + + @TestMetadata("functionReferenceFromObject.kt") + public void testFunctionReferenceFromObject() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/functionReferenceFromObject.kt"); + } + + @TestMetadata("innerClassConstuctorReference.kt") + public void testInnerClassConstuctorReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/innerClassConstuctorReference.kt"); + } + + @TestMetadata("privateFunctionReference.kt") + public void testPrivateFunctionReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/privateFunctionReference.kt"); + } + + @TestMetadata("privatePropertyReference.kt") + public void testPrivatePropertyReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/privatePropertyReference.kt"); + } + + @TestMetadata("propertyImportedFromObject.kt") + public void testPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/propertyImportedFromObject.kt"); + } + + @TestMetadata("propertyReference.kt") + public void testPropertyReference() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/propertyReference.kt"); + } + + @TestMetadata("propertyReferenceFromClass.kt") + public void testPropertyReferenceFromClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/propertyReferenceFromClass.kt"); + } + + @TestMetadata("propertyReferenceFromObject.kt") + public void testPropertyReferenceFromObject() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/lambdaInlining/callableReferences/propertyReferenceFromObject.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/boxInline/defaultValues/maskElimination") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MaskElimination extends AbstractIrInlineDefaultValuesTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("32Parameters.kt") + public void test32Parameters() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/32Parameters.kt"); + } + + @TestMetadata("33Parameters.kt") + public void test33Parameters() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/33Parameters.kt"); + } + + public void testAllFilesPresentInMaskElimination() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/defaultValues/maskElimination"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt18792.kt") + public void testKt18792() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/kt18792.kt"); + } + + @TestMetadata("kt19679.kt") + public void testKt19679() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/kt19679.kt"); + } + + @TestMetadata("kt19679_2.kt") + public void testKt19679_2() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/kt19679_2.kt"); + } + + @TestMetadata("kt19679_3.kt") + public void testKt19679_3() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/kt19679_3.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/defaultValues/maskElimination/simple.kt"); + } + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrJsCodegenBoxTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrJsCodegenBoxTestGenerated.java new file mode 100644 index 00000000000..e96cd50a314 --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrJsCodegenBoxTestGenerated.java @@ -0,0 +1,19489 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/box") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBox() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/annotations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Annotations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInAnnotations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/annotations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotatedEnumEntry.kt") + public void testAnnotatedEnumEntry() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotatedEnumEntry.kt"); + } + + @TestMetadata("annotatedObjectLiteral.kt") + public void testAnnotatedObjectLiteral() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotatedObjectLiteral.kt"); + } + + @TestMetadata("annotationWithKotlinProperty.kt") + public void testAnnotationWithKotlinProperty() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationWithKotlinProperty.kt"); + } + + @TestMetadata("annotationWithKotlinPropertyFromInterfaceCompanion.kt") + public void testAnnotationWithKotlinPropertyFromInterfaceCompanion() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationWithKotlinPropertyFromInterfaceCompanion.kt"); + } + + @TestMetadata("annotationsOnDefault.kt") + public void testAnnotationsOnDefault() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationsOnDefault.kt"); + } + + @TestMetadata("annotationsOnTypeAliases.kt") + public void testAnnotationsOnTypeAliases() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotationsOnTypeAliases.kt"); + } + + @TestMetadata("defaultParameterValues.kt") + public void testDefaultParameterValues() throws Exception { + runTest("compiler/testData/codegen/box/annotations/defaultParameterValues.kt"); + } + + @TestMetadata("delegatedPropertySetter.kt") + public void testDelegatedPropertySetter() throws Exception { + runTest("compiler/testData/codegen/box/annotations/delegatedPropertySetter.kt"); + } + + @TestMetadata("fileClassWithFileAnnotation.kt") + public void testFileClassWithFileAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/annotations/fileClassWithFileAnnotation.kt"); + } + + @TestMetadata("jvmAnnotationFlags.kt") + public void testJvmAnnotationFlags() throws Exception { + runTest("compiler/testData/codegen/box/annotations/jvmAnnotationFlags.kt"); + } + + @TestMetadata("kotlinPropertyFromClassObjectAsParameter.kt") + public void testKotlinPropertyFromClassObjectAsParameter() throws Exception { + runTest("compiler/testData/codegen/box/annotations/kotlinPropertyFromClassObjectAsParameter.kt"); + } + + @TestMetadata("kotlinTopLevelPropertyAsParameter.kt") + public void testKotlinTopLevelPropertyAsParameter() throws Exception { + runTest("compiler/testData/codegen/box/annotations/kotlinTopLevelPropertyAsParameter.kt"); + } + + @TestMetadata("kt10136.kt") + public void testKt10136() throws Exception { + runTest("compiler/testData/codegen/box/annotations/kt10136.kt"); + } + + @TestMetadata("nestedClassPropertyAsParameter.kt") + public void testNestedClassPropertyAsParameter() throws Exception { + runTest("compiler/testData/codegen/box/annotations/nestedClassPropertyAsParameter.kt"); + } + + @TestMetadata("nestedClassesInAnnotations.kt") + public void testNestedClassesInAnnotations() throws Exception { + runTest("compiler/testData/codegen/box/annotations/nestedClassesInAnnotations.kt"); + } + + @TestMetadata("parameterAnnotationInDefaultImpls.kt") + public void testParameterAnnotationInDefaultImpls() throws Exception { + runTest("compiler/testData/codegen/box/annotations/parameterAnnotationInDefaultImpls.kt"); + } + + @TestMetadata("parameterWithPrimitiveType.kt") + public void testParameterWithPrimitiveType() throws Exception { + runTest("compiler/testData/codegen/box/annotations/parameterWithPrimitiveType.kt"); + } + + @TestMetadata("propertyWithPropertyInInitializerAsParameter.kt") + public void testPropertyWithPropertyInInitializerAsParameter() throws Exception { + runTest("compiler/testData/codegen/box/annotations/propertyWithPropertyInInitializerAsParameter.kt"); + } + + @TestMetadata("resolveWithLowPriorityAnnotation.kt") + public void testResolveWithLowPriorityAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/annotations/resolveWithLowPriorityAnnotation.kt"); + } + + @TestMetadata("varargInAnnotationParameter.kt") + public void testVarargInAnnotationParameter() throws Exception { + runTest("compiler/testData/codegen/box/annotations/varargInAnnotationParameter.kt"); + } + + @TestMetadata("wrongAnnotationArgumentInCtor.kt") + public void testWrongAnnotationArgumentInCtor() throws Exception { + runTest("compiler/testData/codegen/box/annotations/wrongAnnotationArgumentInCtor.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/annotations/annotatedLambda") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class AnnotatedLambda extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInAnnotatedLambda() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/annotations/annotatedLambda"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("funExpression.kt") + public void testFunExpression() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotatedLambda/funExpression.kt"); + } + + @TestMetadata("lambda.kt") + public void testLambda() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotatedLambda/lambda.kt"); + } + + @TestMetadata("samFunExpression.kt") + public void testSamFunExpression() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotatedLambda/samFunExpression.kt"); + } + + @TestMetadata("samLambda.kt") + public void testSamLambda() throws Exception { + runTest("compiler/testData/codegen/box/annotations/annotatedLambda/samLambda.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/argumentOrder") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ArgumentOrder extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInArgumentOrder() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/argumentOrder"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("argumentOrderInObjectSuperCall.kt") + public void testArgumentOrderInObjectSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/argumentOrderInObjectSuperCall.kt"); + } + + @TestMetadata("argumentOrderInSuperCall.kt") + public void testArgumentOrderInSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/argumentOrderInSuperCall.kt"); + } + + @TestMetadata("arguments.kt") + public void testArguments() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/arguments.kt"); + } + + @TestMetadata("captured.kt") + public void testCaptured() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/captured.kt"); + } + + @TestMetadata("capturedInExtension.kt") + public void testCapturedInExtension() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/capturedInExtension.kt"); + } + + @TestMetadata("defaults.kt") + public void testDefaults() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/defaults.kt"); + } + + @TestMetadata("extension.kt") + public void testExtension() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/extension.kt"); + } + + @TestMetadata("extensionInClass.kt") + public void testExtensionInClass() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/extensionInClass.kt"); + } + + @TestMetadata("kt9277.kt") + public void testKt9277() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/kt9277.kt"); + } + + @TestMetadata("lambdaMigration.kt") + public void testLambdaMigration() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/lambdaMigration.kt"); + } + + @TestMetadata("lambdaMigrationInClass.kt") + public void testLambdaMigrationInClass() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/lambdaMigrationInClass.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/simple.kt"); + } + + @TestMetadata("simpleInClass.kt") + public void testSimpleInClass() throws Exception { + runTest("compiler/testData/codegen/box/argumentOrder/simpleInClass.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/arrays") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Arrays extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInArrays() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/arrays"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayConstructorsSimple.kt") + public void testArrayConstructorsSimple() throws Exception { + runTest("compiler/testData/codegen/box/arrays/arrayConstructorsSimple.kt"); + } + + @TestMetadata("arrayGetAssignMultiIndex.kt") + public void testArrayGetAssignMultiIndex() throws Exception { + runTest("compiler/testData/codegen/box/arrays/arrayGetAssignMultiIndex.kt"); + } + + @TestMetadata("arrayGetMultiIndex.kt") + public void testArrayGetMultiIndex() throws Exception { + runTest("compiler/testData/codegen/box/arrays/arrayGetMultiIndex.kt"); + } + + @TestMetadata("arrayInstanceOf.kt") + public void testArrayInstanceOf() throws Exception { + runTest("compiler/testData/codegen/box/arrays/arrayInstanceOf.kt"); + } + + @TestMetadata("arrayPlusAssign.kt") + public void testArrayPlusAssign() throws Exception { + runTest("compiler/testData/codegen/box/arrays/arrayPlusAssign.kt"); + } + + @TestMetadata("arraysAreCloneable.kt") + public void testArraysAreCloneable() throws Exception { + runTest("compiler/testData/codegen/box/arrays/arraysAreCloneable.kt"); + } + + @TestMetadata("cloneArray.kt") + public void testCloneArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/cloneArray.kt"); + } + + @TestMetadata("clonePrimitiveArrays.kt") + public void testClonePrimitiveArrays() throws Exception { + runTest("compiler/testData/codegen/box/arrays/clonePrimitiveArrays.kt"); + } + + @TestMetadata("collectionAssignGetMultiIndex.kt") + public void testCollectionAssignGetMultiIndex() throws Exception { + runTest("compiler/testData/codegen/box/arrays/collectionAssignGetMultiIndex.kt"); + } + + @TestMetadata("collectionGetMultiIndex.kt") + public void testCollectionGetMultiIndex() throws Exception { + runTest("compiler/testData/codegen/box/arrays/collectionGetMultiIndex.kt"); + } + + @TestMetadata("forEachBooleanArray.kt") + public void testForEachBooleanArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachBooleanArray.kt"); + } + + @TestMetadata("forEachByteArray.kt") + public void testForEachByteArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachByteArray.kt"); + } + + @TestMetadata("forEachCharArray.kt") + public void testForEachCharArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachCharArray.kt"); + } + + @TestMetadata("forEachDoubleArray.kt") + public void testForEachDoubleArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachDoubleArray.kt"); + } + + @TestMetadata("forEachFloatArray.kt") + public void testForEachFloatArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachFloatArray.kt"); + } + + @TestMetadata("forEachIntArray.kt") + public void testForEachIntArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachIntArray.kt"); + } + + @TestMetadata("forEachLongArray.kt") + public void testForEachLongArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachLongArray.kt"); + } + + @TestMetadata("forEachShortArray.kt") + public void testForEachShortArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/forEachShortArray.kt"); + } + + @TestMetadata("genericArrayInObjectLiteralConstructor.kt") + public void testGenericArrayInObjectLiteralConstructor() throws Exception { + runTest("compiler/testData/codegen/box/arrays/genericArrayInObjectLiteralConstructor.kt"); + } + + @TestMetadata("hashMap.kt") + public void testHashMap() throws Exception { + runTest("compiler/testData/codegen/box/arrays/hashMap.kt"); + } + + @TestMetadata("inProjectionAsParameter.kt") + public void testInProjectionAsParameter() throws Exception { + runTest("compiler/testData/codegen/box/arrays/inProjectionAsParameter.kt"); + } + + @TestMetadata("inProjectionOfArray.kt") + public void testInProjectionOfArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/inProjectionOfArray.kt"); + } + + @TestMetadata("inProjectionOfList.kt") + public void testInProjectionOfList() throws Exception { + runTest("compiler/testData/codegen/box/arrays/inProjectionOfList.kt"); + } + + @TestMetadata("indices.kt") + public void testIndices() throws Exception { + runTest("compiler/testData/codegen/box/arrays/indices.kt"); + } + + @TestMetadata("indicesChar.kt") + public void testIndicesChar() throws Exception { + runTest("compiler/testData/codegen/box/arrays/indicesChar.kt"); + } + + @TestMetadata("iterator.kt") + public void testIterator() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iterator.kt"); + } + + @TestMetadata("iteratorBooleanArray.kt") + public void testIteratorBooleanArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorBooleanArray.kt"); + } + + @TestMetadata("iteratorByteArray.kt") + public void testIteratorByteArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorByteArray.kt"); + } + + @TestMetadata("iteratorByteArrayNextByte.kt") + public void testIteratorByteArrayNextByte() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorByteArrayNextByte.kt"); + } + + @TestMetadata("iteratorCharArray.kt") + public void testIteratorCharArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorCharArray.kt"); + } + + @TestMetadata("iteratorDoubleArray.kt") + public void testIteratorDoubleArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorDoubleArray.kt"); + } + + @TestMetadata("iteratorFloatArray.kt") + public void testIteratorFloatArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorFloatArray.kt"); + } + + @TestMetadata("iteratorIntArray.kt") + public void testIteratorIntArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorIntArray.kt"); + } + + @TestMetadata("iteratorLongArray.kt") + public void testIteratorLongArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorLongArray.kt"); + } + + @TestMetadata("iteratorLongArrayNextLong.kt") + public void testIteratorLongArrayNextLong() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorLongArrayNextLong.kt"); + } + + @TestMetadata("iteratorShortArray.kt") + public void testIteratorShortArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/iteratorShortArray.kt"); + } + + @TestMetadata("kt1291.kt") + public void testKt1291() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt1291.kt"); + } + + @TestMetadata("kt17134.kt") + public void testKt17134() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt17134.kt"); + } + + @TestMetadata("kt238.kt") + public void testKt238() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt238.kt"); + } + + @TestMetadata("kt2997.kt") + public void testKt2997() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt2997.kt"); + } + + @TestMetadata("kt33.kt") + public void testKt33() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt33.kt"); + } + + @TestMetadata("kt3771.kt") + public void testKt3771() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt3771.kt"); + } + + @TestMetadata("kt4118.kt") + public void testKt4118() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt4118.kt"); + } + + @TestMetadata("kt4348.kt") + public void testKt4348() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt4348.kt"); + } + + @TestMetadata("kt4357.kt") + public void testKt4357() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt4357.kt"); + } + + @TestMetadata("kt503.kt") + public void testKt503() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt503.kt"); + } + + @TestMetadata("kt594.kt") + public void testKt594() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt594.kt"); + } + + @TestMetadata("kt602.kt") + public void testKt602() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt602.kt"); + } + + @TestMetadata("kt7009.kt") + public void testKt7009() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt7009.kt"); + } + + @TestMetadata("kt7288.kt") + public void testKt7288() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt7288.kt"); + } + + @TestMetadata("kt7338.kt") + public void testKt7338() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt7338.kt"); + } + + @TestMetadata("kt779.kt") + public void testKt779() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt779.kt"); + } + + @TestMetadata("kt945.kt") + public void testKt945() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt945.kt"); + } + + @TestMetadata("kt950.kt") + public void testKt950() throws Exception { + runTest("compiler/testData/codegen/box/arrays/kt950.kt"); + } + + @TestMetadata("longAsIndex.kt") + public void testLongAsIndex() throws Exception { + runTest("compiler/testData/codegen/box/arrays/longAsIndex.kt"); + } + + @TestMetadata("multiArrayConstructors.kt") + public void testMultiArrayConstructors() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiArrayConstructors.kt"); + } + + @TestMetadata("nonLocalReturnArrayConstructor.kt") + public void testNonLocalReturnArrayConstructor() throws Exception { + runTest("compiler/testData/codegen/box/arrays/nonLocalReturnArrayConstructor.kt"); + } + + @TestMetadata("nonNullArray.kt") + public void testNonNullArray() throws Exception { + runTest("compiler/testData/codegen/box/arrays/nonNullArray.kt"); + } + + @TestMetadata("primitiveArrays.kt") + public void testPrimitiveArrays() throws Exception { + runTest("compiler/testData/codegen/box/arrays/primitiveArrays.kt"); + } + + @TestMetadata("stdlib.kt") + public void testStdlib() throws Exception { + runTest("compiler/testData/codegen/box/arrays/stdlib.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/arrays/multiDecl") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MultiDecl extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMultiDecl() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/arrays/multiDecl"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt15560.kt") + public void testKt15560() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/kt15560.kt"); + } + + @TestMetadata("kt15568.kt") + public void testKt15568() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/kt15568.kt"); + } + + @TestMetadata("kt15575.kt") + public void testKt15575() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/kt15575.kt"); + } + + @TestMetadata("MultiDeclFor.kt") + public void testMultiDeclFor() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/MultiDeclFor.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + + @TestMetadata("MultiDeclForValCaptured.kt") + public void testMultiDeclForValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/MultiDeclForValCaptured.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/arrays/multiDecl/int") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Int extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInt() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/arrays/multiDecl/int"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/int/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/int/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/int/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/int/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/arrays/multiDecl/long") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Long extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLong() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/arrays/multiDecl/long"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/long/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/long/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/long/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/arrays/multiDecl/long/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + } + } + + @TestMetadata("compiler/testData/codegen/box/assert") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Assert extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInAssert() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/assert"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("alwaysDisable.kt") + public void testAlwaysDisable() throws Exception { + runTest("compiler/testData/codegen/box/assert/alwaysDisable.kt"); + } + + @TestMetadata("alwaysEnable.kt") + public void testAlwaysEnable() throws Exception { + runTest("compiler/testData/codegen/box/assert/alwaysEnable.kt"); + } + + @TestMetadata("legacy.kt") + public void testLegacy() throws Exception { + runTest("compiler/testData/codegen/box/assert/legacy.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/assert/jvm") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Jvm extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvm() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/assert/jvm"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("interfaceAssertionsDisabled.kt") + public void testInterfaceAssertionsDisabled() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/interfaceAssertionsDisabled.kt"); + } + + @TestMetadata("interfaceAssertionsEnabled.kt") + public void testInterfaceAssertionsEnabled() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/interfaceAssertionsEnabled.kt"); + } + + @TestMetadata("localAnonymousFunction.kt") + public void testLocalAnonymousFunction() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/localAnonymousFunction.kt"); + } + + @TestMetadata("localClass.kt") + public void testLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/localClass.kt"); + } + + @TestMetadata("localFunction.kt") + public void testLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/localFunction.kt"); + } + + @TestMetadata("localLambda.kt") + public void testLocalLambda() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/localLambda.kt"); + } + + @TestMetadata("localObject.kt") + public void testLocalObject() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/localObject.kt"); + } + + @TestMetadata("nonLocalReturn.kt") + public void testNonLocalReturn() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/nonLocalReturn.kt"); + } + + @TestMetadata("ordinary.kt") + public void testOrdinary() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/ordinary.kt"); + } + + @TestMetadata("superClassInitializer.kt") + public void testSuperClassInitializer() throws Exception { + runTest("compiler/testData/codegen/box/assert/jvm/superClassInitializer.kt"); + } + + @TestMetadata("suspendFunctionAssertionDisabled.kt") + public void testSuspendFunctionAssertionDisabled_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/assert/jvm/suspendFunctionAssertionDisabled.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendFunctionAssertionsEnabled.kt") + public void testSuspendFunctionAssertionsEnabled_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/assert/jvm/suspendFunctionAssertionsEnabled.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendLambdaAssertionsDisabled.kt") + public void testSuspendLambdaAssertionsDisabled_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/assert/jvm/suspendLambdaAssertionsDisabled.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendLambdaAssertionsEnabled.kt") + public void testSuspendLambdaAssertionsEnabled_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/assert/jvm/suspendLambdaAssertionsEnabled.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/binaryOp") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class BinaryOp extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBinaryOp() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/binaryOp"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("bitwiseOp.kt") + public void testBitwiseOp() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/bitwiseOp.kt"); + } + + @TestMetadata("bitwiseOpAny.kt") + public void testBitwiseOpAny() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/bitwiseOpAny.kt"); + } + + @TestMetadata("bitwiseOpNullable.kt") + public void testBitwiseOpNullable() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/bitwiseOpNullable.kt"); + } + + @TestMetadata("call.kt") + public void testCall() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/call.kt"); + } + + @TestMetadata("callAny.kt") + public void testCallAny() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/callAny.kt"); + } + + @TestMetadata("callNullable.kt") + public void testCallNullable() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/callNullable.kt"); + } + + @TestMetadata("compareBoxedChars.kt") + public void testCompareBoxedChars() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/compareBoxedChars.kt"); + } + + @TestMetadata("compareWithBoxedDouble.kt") + public void testCompareWithBoxedDouble() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/compareWithBoxedDouble.kt"); + } + + @TestMetadata("compareWithBoxedLong.kt") + public void testCompareWithBoxedLong() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/compareWithBoxedLong.kt"); + } + + @TestMetadata("divisionByZero.kt") + public void testDivisionByZero() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/divisionByZero.kt"); + } + + @TestMetadata("intrinsic.kt") + public void testIntrinsic() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/intrinsic.kt"); + } + + @TestMetadata("intrinsicAny.kt") + public void testIntrinsicAny() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/intrinsicAny.kt"); + } + + @TestMetadata("intrinsicNullable.kt") + public void testIntrinsicNullable() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/intrinsicNullable.kt"); + } + + @TestMetadata("kt11163.kt") + public void testKt11163() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/kt11163.kt"); + } + + @TestMetadata("kt11163_properIeee754comparisons.kt") + public void testKt11163_properIeee754comparisons() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/kt11163_properIeee754comparisons.kt"); + } + + @TestMetadata("kt23030_properIeee754comparisons.kt") + public void testKt23030_properIeee754comparisons() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/kt23030_properIeee754comparisons.kt"); + } + + @TestMetadata("kt6747_identityEquals.kt") + public void testKt6747_identityEquals() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/kt6747_identityEquals.kt"); + } + + @TestMetadata("overflowChar.kt") + public void testOverflowChar() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/overflowChar.kt"); + } + + @TestMetadata("overflowInt.kt") + public void testOverflowInt() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/overflowInt.kt"); + } + + @TestMetadata("overflowLong.kt") + public void testOverflowLong() throws Exception { + runTest("compiler/testData/codegen/box/binaryOp/overflowLong.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/boxingOptimization") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class BoxingOptimization extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBoxingOptimization() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/boxingOptimization"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boxedIntegersCmp.kt") + public void testBoxedIntegersCmp() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/boxedIntegersCmp.kt"); + } + + @TestMetadata("boxedPrimitivesAreEqual.kt") + public void testBoxedPrimitivesAreEqual() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/boxedPrimitivesAreEqual.kt"); + } + + @TestMetadata("boxedRealsCmp.kt") + public void testBoxedRealsCmp() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/boxedRealsCmp.kt"); + } + + @TestMetadata("casts.kt") + public void testCasts() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/casts.kt"); + } + + @TestMetadata("checkcastAndInstanceOf.kt") + public void testCheckcastAndInstanceOf() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/checkcastAndInstanceOf.kt"); + } + + @TestMetadata("explicitEqualsOnDouble.kt") + public void testExplicitEqualsOnDouble() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/explicitEqualsOnDouble.kt"); + } + + @TestMetadata("fold.kt") + public void testFold() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/fold.kt"); + } + + @TestMetadata("foldRange.kt") + public void testFoldRange() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/foldRange.kt"); + } + + @TestMetadata("intCompareTo.kt") + public void testIntCompareTo() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/intCompareTo.kt"); + } + + @TestMetadata("kt15871.kt") + public void testKt15871() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt15871.kt"); + } + + @TestMetadata("kt19767.kt") + public void testKt19767() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt19767.kt"); + } + + @TestMetadata("kt19767_2.kt") + public void testKt19767_2() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt19767_2.kt"); + } + + @TestMetadata("kt19767_chain.kt") + public void testKt19767_chain() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt19767_chain.kt"); + } + + @TestMetadata("kt5493.kt") + public void testKt5493() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt5493.kt"); + } + + @TestMetadata("kt5588.kt") + public void testKt5588() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt5588.kt"); + } + + @TestMetadata("kt5844.kt") + public void testKt5844() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt5844.kt"); + } + + @TestMetadata("kt6047.kt") + public void testKt6047() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt6047.kt"); + } + + @TestMetadata("kt6842.kt") + public void testKt6842() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/kt6842.kt"); + } + + @TestMetadata("maxMinBy.kt") + public void testMaxMinBy() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/maxMinBy.kt"); + } + + @TestMetadata("nullCheck.kt") + public void testNullCheck() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/nullCheck.kt"); + } + + @TestMetadata("progressions.kt") + public void testProgressions() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/progressions.kt"); + } + + @TestMetadata("safeCallWithElvis.kt") + public void testSafeCallWithElvis() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/safeCallWithElvis.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/simple.kt"); + } + + @TestMetadata("simpleUninitializedMerge.kt") + public void testSimpleUninitializedMerge() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/simpleUninitializedMerge.kt"); + } + + @TestMetadata("taintedValues.kt") + public void testTaintedValues() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/taintedValues.kt"); + } + + @TestMetadata("taintedValuesBox.kt") + public void testTaintedValuesBox() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/taintedValuesBox.kt"); + } + + @TestMetadata("unsafeRemoving.kt") + public void testUnsafeRemoving() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/unsafeRemoving.kt"); + } + + @TestMetadata("variables.kt") + public void testVariables() throws Exception { + runTest("compiler/testData/codegen/box/boxingOptimization/variables.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/bridges") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Bridges extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBridges() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/bridges"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("complexMultiInheritance.kt") + public void testComplexMultiInheritance() throws Exception { + runTest("compiler/testData/codegen/box/bridges/complexMultiInheritance.kt"); + } + + @TestMetadata("complexTraitImpl.kt") + public void testComplexTraitImpl() throws Exception { + runTest("compiler/testData/codegen/box/bridges/complexTraitImpl.kt"); + } + + @TestMetadata("delegation.kt") + public void testDelegation() throws Exception { + runTest("compiler/testData/codegen/box/bridges/delegation.kt"); + } + + @TestMetadata("delegationComplex.kt") + public void testDelegationComplex() throws Exception { + runTest("compiler/testData/codegen/box/bridges/delegationComplex.kt"); + } + + @TestMetadata("delegationComplexWithList.kt") + public void testDelegationComplexWithList() throws Exception { + runTest("compiler/testData/codegen/box/bridges/delegationComplexWithList.kt"); + } + + @TestMetadata("delegationProperty.kt") + public void testDelegationProperty() throws Exception { + runTest("compiler/testData/codegen/box/bridges/delegationProperty.kt"); + } + + @TestMetadata("diamond.kt") + public void testDiamond() throws Exception { + runTest("compiler/testData/codegen/box/bridges/diamond.kt"); + } + + @TestMetadata("fakeCovariantOverride.kt") + public void testFakeCovariantOverride() throws Exception { + runTest("compiler/testData/codegen/box/bridges/fakeCovariantOverride.kt"); + } + + @TestMetadata("fakeGenericCovariantOverride.kt") + public void testFakeGenericCovariantOverride() throws Exception { + runTest("compiler/testData/codegen/box/bridges/fakeGenericCovariantOverride.kt"); + } + + @TestMetadata("fakeGenericCovariantOverrideWithDelegation.kt") + public void testFakeGenericCovariantOverrideWithDelegation() throws Exception { + runTest("compiler/testData/codegen/box/bridges/fakeGenericCovariantOverrideWithDelegation.kt"); + } + + @TestMetadata("fakeOverrideOfTraitImpl.kt") + public void testFakeOverrideOfTraitImpl() throws Exception { + runTest("compiler/testData/codegen/box/bridges/fakeOverrideOfTraitImpl.kt"); + } + + @TestMetadata("fakeOverrideWithSeveralSuperDeclarations.kt") + public void testFakeOverrideWithSeveralSuperDeclarations() throws Exception { + runTest("compiler/testData/codegen/box/bridges/fakeOverrideWithSeveralSuperDeclarations.kt"); + } + + @TestMetadata("fakeOverrideWithSynthesizedImplementation.kt") + public void testFakeOverrideWithSynthesizedImplementation() throws Exception { + runTest("compiler/testData/codegen/box/bridges/fakeOverrideWithSynthesizedImplementation.kt"); + } + + @TestMetadata("genericProperty.kt") + public void testGenericProperty() throws Exception { + runTest("compiler/testData/codegen/box/bridges/genericProperty.kt"); + } + + @TestMetadata("jsName.kt") + public void testJsName() throws Exception { + runTest("compiler/testData/codegen/box/bridges/jsName.kt"); + } + + @TestMetadata("jsNative.kt") + public void testJsNative() throws Exception { + runTest("compiler/testData/codegen/box/bridges/jsNative.kt"); + } + + @TestMetadata("kt12416.kt") + public void testKt12416() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt12416.kt"); + } + + @TestMetadata("kt1939.kt") + public void testKt1939() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt1939.kt"); + } + + @TestMetadata("kt1959.kt") + public void testKt1959() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt1959.kt"); + } + + @TestMetadata("kt2498.kt") + public void testKt2498() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt2498.kt"); + } + + @TestMetadata("kt2702.kt") + public void testKt2702() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt2702.kt"); + } + + @TestMetadata("kt2833.kt") + public void testKt2833() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt2833.kt"); + } + + @TestMetadata("kt2920.kt") + public void testKt2920() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt2920.kt"); + } + + @TestMetadata("kt318.kt") + public void testKt318() throws Exception { + runTest("compiler/testData/codegen/box/bridges/kt318.kt"); + } + + @TestMetadata("longChainOneBridge.kt") + public void testLongChainOneBridge() throws Exception { + runTest("compiler/testData/codegen/box/bridges/longChainOneBridge.kt"); + } + + @TestMetadata("manyTypeArgumentsSubstitutedSuccessively.kt") + public void testManyTypeArgumentsSubstitutedSuccessively() throws Exception { + runTest("compiler/testData/codegen/box/bridges/manyTypeArgumentsSubstitutedSuccessively.kt"); + } + + @TestMetadata("methodFromTrait.kt") + public void testMethodFromTrait() throws Exception { + runTest("compiler/testData/codegen/box/bridges/methodFromTrait.kt"); + } + + @TestMetadata("noBridgeOnMutableCollectionInheritance.kt") + public void testNoBridgeOnMutableCollectionInheritance() throws Exception { + runTest("compiler/testData/codegen/box/bridges/noBridgeOnMutableCollectionInheritance.kt"); + } + + @TestMetadata("overrideAbstractProperty.kt") + public void testOverrideAbstractProperty() throws Exception { + runTest("compiler/testData/codegen/box/bridges/overrideAbstractProperty.kt"); + } + + @TestMetadata("overrideReturnType.kt") + public void testOverrideReturnType() throws Exception { + runTest("compiler/testData/codegen/box/bridges/overrideReturnType.kt"); + } + + @TestMetadata("propertyAccessorsWithoutBody.kt") + public void testPropertyAccessorsWithoutBody() throws Exception { + runTest("compiler/testData/codegen/box/bridges/propertyAccessorsWithoutBody.kt"); + } + + @TestMetadata("propertyDiamond.kt") + public void testPropertyDiamond() throws Exception { + runTest("compiler/testData/codegen/box/bridges/propertyDiamond.kt"); + } + + @TestMetadata("propertyInConstructor.kt") + public void testPropertyInConstructor() throws Exception { + runTest("compiler/testData/codegen/box/bridges/propertyInConstructor.kt"); + } + + @TestMetadata("propertySetter.kt") + public void testPropertySetter() throws Exception { + runTest("compiler/testData/codegen/box/bridges/propertySetter.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simple.kt"); + } + + @TestMetadata("simpleEnum.kt") + public void testSimpleEnum() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simpleEnum.kt"); + } + + @TestMetadata("simpleGenericMethod.kt") + public void testSimpleGenericMethod() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simpleGenericMethod.kt"); + } + + @TestMetadata("simpleObject.kt") + public void testSimpleObject() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simpleObject.kt"); + } + + @TestMetadata("simpleReturnType.kt") + public void testSimpleReturnType() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simpleReturnType.kt"); + } + + @TestMetadata("simpleTraitImpl.kt") + public void testSimpleTraitImpl() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simpleTraitImpl.kt"); + } + + @TestMetadata("simpleUpperBound.kt") + public void testSimpleUpperBound() throws Exception { + runTest("compiler/testData/codegen/box/bridges/simpleUpperBound.kt"); + } + + @TestMetadata("strListContains.kt") + public void testStrListContains() throws Exception { + runTest("compiler/testData/codegen/box/bridges/strListContains.kt"); + } + + @TestMetadata("traitImplInheritsTraitImpl.kt") + public void testTraitImplInheritsTraitImpl() throws Exception { + runTest("compiler/testData/codegen/box/bridges/traitImplInheritsTraitImpl.kt"); + } + + @TestMetadata("twoParentsWithDifferentMethodsTwoBridges.kt") + public void testTwoParentsWithDifferentMethodsTwoBridges() throws Exception { + runTest("compiler/testData/codegen/box/bridges/twoParentsWithDifferentMethodsTwoBridges.kt"); + } + + @TestMetadata("twoParentsWithDifferentMethodsTwoBridges2.kt") + public void testTwoParentsWithDifferentMethodsTwoBridges2() throws Exception { + runTest("compiler/testData/codegen/box/bridges/twoParentsWithDifferentMethodsTwoBridges2.kt"); + } + + @TestMetadata("twoParentsWithTheSameMethodOneBridge.kt") + public void testTwoParentsWithTheSameMethodOneBridge() throws Exception { + runTest("compiler/testData/codegen/box/bridges/twoParentsWithTheSameMethodOneBridge.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/bridges/substitutionInSuperClass") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SubstitutionInSuperClass extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractFun.kt") + public void testAbstractFun() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/abstractFun.kt"); + } + + public void testAllFilesPresentInSubstitutionInSuperClass() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/bridges/substitutionInSuperClass"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boundedTypeArguments.kt") + public void testBoundedTypeArguments() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/boundedTypeArguments.kt"); + } + + @TestMetadata("delegation.kt") + public void testDelegation() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/delegation.kt"); + } + + @TestMetadata("differentErasureInSuperClass.kt") + public void testDifferentErasureInSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/differentErasureInSuperClass.kt"); + } + + @TestMetadata("differentErasureInSuperClassComplex.kt") + public void testDifferentErasureInSuperClassComplex() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/differentErasureInSuperClassComplex.kt"); + } + + @TestMetadata("enum.kt") + public void testEnum() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/enum.kt"); + } + + @TestMetadata("genericMethod.kt") + public void testGenericMethod() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/genericMethod.kt"); + } + + @TestMetadata("object.kt") + public void testObject() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/object.kt"); + } + + @TestMetadata("property.kt") + public void testProperty() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/property.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/simple.kt"); + } + + @TestMetadata("upperBound.kt") + public void testUpperBound() throws Exception { + runTest("compiler/testData/codegen/box/bridges/substitutionInSuperClass/upperBound.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/builtinStubMethods") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class BuiltinStubMethods extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractMember.kt") + public void testAbstractMember() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/abstractMember.kt"); + } + + public void testAllFilesPresentInBuiltinStubMethods() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/builtinStubMethods"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("Collection.kt") + public void testCollection() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/Collection.kt"); + } + + @TestMetadata("customReadOnlyIterator.kt") + public void testCustomReadOnlyIterator() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/customReadOnlyIterator.kt"); + } + + @TestMetadata("implementationInTrait.kt") + public void testImplementationInTrait() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/implementationInTrait.kt"); + } + + @TestMetadata("inheritedImplementations.kt") + public void testInheritedImplementations() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/inheritedImplementations.kt"); + } + + @TestMetadata("Iterator.kt") + public void testIterator() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/Iterator.kt"); + } + + @TestMetadata("IteratorWithRemove.kt") + public void testIteratorWithRemove() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/IteratorWithRemove.kt"); + } + + @TestMetadata("List.kt") + public void testList() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/List.kt"); + } + + @TestMetadata("ListIterator.kt") + public void testListIterator() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/ListIterator.kt"); + } + + @TestMetadata("ListWithAllImplementations.kt") + public void testListWithAllImplementations() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/ListWithAllImplementations.kt"); + } + + @TestMetadata("ListWithAllInheritedImplementations.kt") + public void testListWithAllInheritedImplementations() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/ListWithAllInheritedImplementations.kt"); + } + + @TestMetadata("Map.kt") + public void testMap() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/Map.kt"); + } + + @TestMetadata("MapEntry.kt") + public void testMapEntry() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/MapEntry.kt"); + } + + @TestMetadata("MapEntryWithSetValue.kt") + public void testMapEntryWithSetValue() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/MapEntryWithSetValue.kt"); + } + + @TestMetadata("MapWithAllImplementations.kt") + public void testMapWithAllImplementations() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/MapWithAllImplementations.kt"); + } + + @TestMetadata("nonTrivialSubstitution.kt") + public void testNonTrivialSubstitution() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/nonTrivialSubstitution.kt"); + } + + @TestMetadata("nonTrivialUpperBound.kt") + public void testNonTrivialUpperBound() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/nonTrivialUpperBound.kt"); + } + + @TestMetadata("substitutedIterable.kt") + public void testSubstitutedIterable() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/substitutedIterable.kt"); + } + + @TestMetadata("SubstitutedList.kt") + public void testSubstitutedList() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/SubstitutedList.kt"); + } + + @TestMetadata("substitutedListWithExtraSuperInterface.kt") + public void testSubstitutedListWithExtraSuperInterface() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/substitutedListWithExtraSuperInterface.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/builtinStubMethods/extendJavaCollections") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExtendJavaCollections extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractSet.kt") + public void testAbstractSet() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/extendJavaCollections/abstractSet.kt"); + } + + public void testAllFilesPresentInExtendJavaCollections() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/builtinStubMethods/extendJavaCollections"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayList.kt") + public void testArrayList() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/extendJavaCollections/arrayList.kt"); + } + + @TestMetadata("hashMap.kt") + public void testHashMap() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/extendJavaCollections/hashMap.kt"); + } + + @TestMetadata("hashSet.kt") + public void testHashSet() throws Exception { + runTest("compiler/testData/codegen/box/builtinStubMethods/extendJavaCollections/hashSet.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/callableReference") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CallableReference extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCallableReference() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/bound") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Bound extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBound() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/bound"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("array.kt") + public void testArray() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/array.kt"); + } + + @TestMetadata("companionObjectReceiver.kt") + public void testCompanionObjectReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/companionObjectReceiver.kt"); + } + + @TestMetadata("emptyLHS.kt") + public void testEmptyLHS() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/emptyLHS.kt"); + } + + @TestMetadata("enumEntryMember.kt") + public void testEnumEntryMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/enumEntryMember.kt"); + } + + @TestMetadata("genericValOnLHS.kt") + public void testGenericValOnLHS() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/genericValOnLHS.kt"); + } + + @TestMetadata("kCallableNameIntrinsic.kt") + public void testKCallableNameIntrinsic() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/kCallableNameIntrinsic.kt"); + } + + @TestMetadata("kt12738.kt") + public void testKt12738() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/kt12738.kt"); + } + + @TestMetadata("kt15446.kt") + public void testKt15446() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/kt15446.kt"); + } + + @TestMetadata("multiCase.kt") + public void testMultiCase() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/multiCase.kt"); + } + + @TestMetadata("nullReceiver.kt") + public void testNullReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/nullReceiver.kt"); + } + + @TestMetadata("objectReceiver.kt") + public void testObjectReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/objectReceiver.kt"); + } + + @TestMetadata("primitiveReceiver.kt") + public void testPrimitiveReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/primitiveReceiver.kt"); + } + + @TestMetadata("simpleFunction.kt") + public void testSimpleFunction() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/simpleFunction.kt"); + } + + @TestMetadata("simpleProperty.kt") + public void testSimpleProperty() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/simpleProperty.kt"); + } + + @TestMetadata("smartCastForExtensionReceiver.kt") + public void testSmartCastForExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/smartCastForExtensionReceiver.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/bound/equals") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Equals extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEquals() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/bound/equals"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("nullableReceiverInEquals.kt") + public void testNullableReceiverInEquals() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/equals/nullableReceiverInEquals.kt"); + } + + @TestMetadata("propertyAccessors.kt") + public void testPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/equals/propertyAccessors.kt"); + } + + @TestMetadata("receiverInEquals.kt") + public void testReceiverInEquals() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/equals/receiverInEquals.kt"); + } + + @TestMetadata("reflectionReference.kt") + public void testReflectionReference() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/equals/reflectionReference.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/bound/inline") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Inline extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInline() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/bound/inline"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("emptyLhsProperty.kt") + public void testEmptyLhsProperty() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/inline/emptyLhsProperty.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/inline/simple.kt"); + } + + @TestMetadata("simpleVal.kt") + public void testSimpleVal() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/bound/inline/simpleVal.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/function") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Function extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractClassMember.kt") + public void testAbstractClassMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/abstractClassMember.kt"); + } + + public void testAllFilesPresentInFunction() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/function"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("booleanNotIntrinsic.kt") + public void testBooleanNotIntrinsic() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/booleanNotIntrinsic.kt"); + } + + @TestMetadata("classMemberFromClass.kt") + public void testClassMemberFromClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/classMemberFromClass.kt"); + } + + @TestMetadata("classMemberFromExtension.kt") + public void testClassMemberFromExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/classMemberFromExtension.kt"); + } + + @TestMetadata("classMemberFromTopLevelStringNoArgs.kt") + public void testClassMemberFromTopLevelStringNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringNoArgs.kt"); + } + + @TestMetadata("classMemberFromTopLevelStringOneStringArg.kt") + public void testClassMemberFromTopLevelStringOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelStringOneStringArg.kt"); + } + + @TestMetadata("classMemberFromTopLevelUnitNoArgs.kt") + public void testClassMemberFromTopLevelUnitNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitNoArgs.kt"); + } + + @TestMetadata("classMemberFromTopLevelUnitOneStringArg.kt") + public void testClassMemberFromTopLevelUnitOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/classMemberFromTopLevelUnitOneStringArg.kt"); + } + + @TestMetadata("constructorFromTopLevelNoArgs.kt") + public void testConstructorFromTopLevelNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelNoArgs.kt"); + } + + @TestMetadata("constructorFromTopLevelOneStringArg.kt") + public void testConstructorFromTopLevelOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/constructorFromTopLevelOneStringArg.kt"); + } + + @TestMetadata("enumValueOfMethod.kt") + public void testEnumValueOfMethod() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/enumValueOfMethod.kt"); + } + + @TestMetadata("equalsIntrinsic.kt") + public void testEqualsIntrinsic() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/equalsIntrinsic.kt"); + } + + @TestMetadata("extensionFromClass.kt") + public void testExtensionFromClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/extensionFromClass.kt"); + } + + @TestMetadata("extensionFromExtension.kt") + public void testExtensionFromExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/extensionFromExtension.kt"); + } + + @TestMetadata("extensionFromTopLevelStringNoArgs.kt") + public void testExtensionFromTopLevelStringNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringNoArgs.kt"); + } + + @TestMetadata("extensionFromTopLevelStringOneStringArg.kt") + public void testExtensionFromTopLevelStringOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelStringOneStringArg.kt"); + } + + @TestMetadata("extensionFromTopLevelUnitNoArgs.kt") + public void testExtensionFromTopLevelUnitNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitNoArgs.kt"); + } + + @TestMetadata("extensionFromTopLevelUnitOneStringArg.kt") + public void testExtensionFromTopLevelUnitOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/extensionFromTopLevelUnitOneStringArg.kt"); + } + + @TestMetadata("genericCallableReferenceArguments.kt") + public void testGenericCallableReferenceArguments() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/genericCallableReferenceArguments.kt"); + } + + @TestMetadata("genericCallableReferencesWithNullableTypes.kt") + public void testGenericCallableReferencesWithNullableTypes() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/genericCallableReferencesWithNullableTypes.kt"); + } + + @TestMetadata("genericCallableReferencesWithOverload.kt") + public void testGenericCallableReferencesWithOverload() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/genericCallableReferencesWithOverload.kt"); + } + + @TestMetadata("genericMember.kt") + public void testGenericMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/genericMember.kt"); + } + + @TestMetadata("genericWithDependentType.kt") + public void testGenericWithDependentType() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/genericWithDependentType.kt"); + } + + @TestMetadata("getArityViaFunctionImpl.kt") + public void testGetArityViaFunctionImpl() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/getArityViaFunctionImpl.kt"); + } + + @TestMetadata("innerClassConstructorWithTwoReceivers.kt") + public void testInnerClassConstructorWithTwoReceivers() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/innerClassConstructorWithTwoReceivers.kt"); + } + + @TestMetadata("innerConstructorFromClass.kt") + public void testInnerConstructorFromClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/innerConstructorFromClass.kt"); + } + + @TestMetadata("innerConstructorFromExtension.kt") + public void testInnerConstructorFromExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/innerConstructorFromExtension.kt"); + } + + @TestMetadata("innerConstructorFromTopLevelNoArgs.kt") + public void testInnerConstructorFromTopLevelNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/innerConstructorFromTopLevelNoArgs.kt"); + } + + @TestMetadata("innerConstructorFromTopLevelOneStringArg.kt") + public void testInnerConstructorFromTopLevelOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/innerConstructorFromTopLevelOneStringArg.kt"); + } + + @TestMetadata("javaCollectionsStaticMethod.kt") + public void testJavaCollectionsStaticMethod() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/javaCollectionsStaticMethod.kt"); + } + + @TestMetadata("nestedConstructorFromClass.kt") + public void testNestedConstructorFromClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/nestedConstructorFromClass.kt"); + } + + @TestMetadata("nestedConstructorFromTopLevelNoArgs.kt") + public void testNestedConstructorFromTopLevelNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelNoArgs.kt"); + } + + @TestMetadata("nestedConstructorFromTopLevelOneStringArg.kt") + public void testNestedConstructorFromTopLevelOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/nestedConstructorFromTopLevelOneStringArg.kt"); + } + + @TestMetadata("newArray.kt") + public void testNewArray() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/newArray.kt"); + } + + @TestMetadata("overloadedFun.kt") + public void testOverloadedFun() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/overloadedFun.kt"); + } + + @TestMetadata("overloadedFunVsVal.kt") + public void testOverloadedFunVsVal() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/overloadedFunVsVal.kt"); + } + + @TestMetadata("privateClassMember.kt") + public void testPrivateClassMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/privateClassMember.kt"); + } + + @TestMetadata("sortListOfStrings.kt") + public void testSortListOfStrings() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/sortListOfStrings.kt"); + } + + @TestMetadata("specialCalls.kt") + public void testSpecialCalls() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/specialCalls.kt"); + } + + @TestMetadata("topLevelFromClass.kt") + public void testTopLevelFromClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/topLevelFromClass.kt"); + } + + @TestMetadata("topLevelFromExtension.kt") + public void testTopLevelFromExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/topLevelFromExtension.kt"); + } + + @TestMetadata("topLevelFromTopLevelStringNoArgs.kt") + public void testTopLevelFromTopLevelStringNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelStringNoArgs.kt"); + } + + @TestMetadata("topLevelFromTopLevelStringOneStringArg.kt") + public void testTopLevelFromTopLevelStringOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelStringOneStringArg.kt"); + } + + @TestMetadata("topLevelFromTopLevelUnitNoArgs.kt") + public void testTopLevelFromTopLevelUnitNoArgs() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitNoArgs.kt"); + } + + @TestMetadata("topLevelFromTopLevelUnitOneStringArg.kt") + public void testTopLevelFromTopLevelUnitOneStringArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/topLevelFromTopLevelUnitOneStringArg.kt"); + } + + @TestMetadata("traitImplMethodWithClassReceiver.kt") + public void testTraitImplMethodWithClassReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/traitImplMethodWithClassReceiver.kt"); + } + + @TestMetadata("traitMember.kt") + public void testTraitMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/traitMember.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/function/local") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Local extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocal() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/function/local"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("captureOuter.kt") + public void testCaptureOuter() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/captureOuter.kt"); + } + + @TestMetadata("classMember.kt") + public void testClassMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/classMember.kt"); + } + + @TestMetadata("closureWithSideEffect.kt") + public void testClosureWithSideEffect() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/closureWithSideEffect.kt"); + } + + @TestMetadata("constructor.kt") + public void testConstructor() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/constructor.kt"); + } + + @TestMetadata("constructorWithInitializer.kt") + public void testConstructorWithInitializer() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/constructorWithInitializer.kt"); + } + + @TestMetadata("enumExtendsTrait.kt") + public void testEnumExtendsTrait() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/enumExtendsTrait.kt"); + } + + @TestMetadata("equalsHashCode.kt") + public void testEqualsHashCode() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/equalsHashCode.kt"); + } + + @TestMetadata("extension.kt") + public void testExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/extension.kt"); + } + + @TestMetadata("extensionToLocalClass.kt") + public void testExtensionToLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/extensionToLocalClass.kt"); + } + + @TestMetadata("extensionToPrimitive.kt") + public void testExtensionToPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/extensionToPrimitive.kt"); + } + + @TestMetadata("extensionWithClosure.kt") + public void testExtensionWithClosure() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/extensionWithClosure.kt"); + } + + @TestMetadata("genericMember.kt") + public void testGenericMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/genericMember.kt"); + } + + @TestMetadata("localClassMember.kt") + public void testLocalClassMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/localClassMember.kt"); + } + + @TestMetadata("localFunctionName.kt") + public void testLocalFunctionName() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/localFunctionName.kt"); + } + + @TestMetadata("localLocal.kt") + public void testLocalLocal() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/localLocal.kt"); + } + + @TestMetadata("recursiveClosure.kt") + public void testRecursiveClosure() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/recursiveClosure.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/simple.kt"); + } + + @TestMetadata("simpleClosure.kt") + public void testSimpleClosure() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/simpleClosure.kt"); + } + + @TestMetadata("simpleWithArg.kt") + public void testSimpleWithArg() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/simpleWithArg.kt"); + } + + @TestMetadata("unitWithSideEffect.kt") + public void testUnitWithSideEffect() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/function/local/unitWithSideEffect.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/property") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Property extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessViaSubclass.kt") + public void testAccessViaSubclass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/accessViaSubclass.kt"); + } + + public void testAllFilesPresentInProperty() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/property"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("delegated.kt") + public void testDelegated() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/delegated.kt"); + } + + @TestMetadata("delegatedMutable.kt") + public void testDelegatedMutable() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/delegatedMutable.kt"); + } + + @TestMetadata("enumNameOrdinal.kt") + public void testEnumNameOrdinal() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/enumNameOrdinal.kt"); + } + + @TestMetadata("extensionToArray.kt") + public void testExtensionToArray() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/extensionToArray.kt"); + } + + @TestMetadata("genericProperty.kt") + public void testGenericProperty() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/genericProperty.kt"); + } + + @TestMetadata("invokePropertyReference.kt") + public void testInvokePropertyReference() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/invokePropertyReference.kt"); + } + + @TestMetadata("javaBeanConvention.kt") + public void testJavaBeanConvention() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/javaBeanConvention.kt"); + } + + @TestMetadata("kClassInstanceIsInitializedFirst.kt") + public void testKClassInstanceIsInitializedFirst() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kClassInstanceIsInitializedFirst.kt"); + } + + @TestMetadata("kt12044.kt") + public void testKt12044() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kt12044.kt"); + } + + @TestMetadata("kt12982_protectedPropertyReference.kt") + public void testKt12982_protectedPropertyReference() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kt12982_protectedPropertyReference.kt"); + } + + @TestMetadata("kt14330.kt") + public void testKt14330() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kt14330.kt"); + } + + @TestMetadata("kt14330_2.kt") + public void testKt14330_2() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kt14330_2.kt"); + } + + @TestMetadata("kt15447.kt") + public void testKt15447() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kt15447.kt"); + } + + @TestMetadata("kt6870_privatePropertyReference.kt") + public void testKt6870_privatePropertyReference() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/kt6870_privatePropertyReference.kt"); + } + + @TestMetadata("listOfStringsMapLength.kt") + public void testListOfStringsMapLength() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/listOfStringsMapLength.kt"); + } + + @TestMetadata("localClassVar.kt") + public void testLocalClassVar() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/localClassVar.kt"); + } + + @TestMetadata("overriddenInSubclass.kt") + public void testOverriddenInSubclass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/overriddenInSubclass.kt"); + } + + @TestMetadata("privateSetOuterClass.kt") + public void testPrivateSetOuterClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/privateSetOuterClass.kt"); + } + + @TestMetadata("privateSetterInsideClass.kt") + public void testPrivateSetterInsideClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/privateSetterInsideClass.kt"); + } + + @TestMetadata("privateSetterOutsideClass.kt") + public void testPrivateSetterOutsideClass() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/privateSetterOutsideClass.kt"); + } + + @TestMetadata("simpleExtension.kt") + public void testSimpleExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/simpleExtension.kt"); + } + + @TestMetadata("simpleMember.kt") + public void testSimpleMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/simpleMember.kt"); + } + + @TestMetadata("simpleMutableExtension.kt") + public void testSimpleMutableExtension() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/simpleMutableExtension.kt"); + } + + @TestMetadata("simpleMutableMember.kt") + public void testSimpleMutableMember() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/simpleMutableMember.kt"); + } + + @TestMetadata("simpleMutableTopLevel.kt") + public void testSimpleMutableTopLevel() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/simpleMutableTopLevel.kt"); + } + + @TestMetadata("simpleTopLevel.kt") + public void testSimpleTopLevel() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/property/simpleTopLevel.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/callableReference/serializability") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Serializability extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSerializability() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/callableReference/serializability"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boundWithNotSerializableReceiver.kt") + public void testBoundWithNotSerializableReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/serializability/boundWithNotSerializableReceiver.kt"); + } + + @TestMetadata("boundWithSerializableReceiver.kt") + public void testBoundWithSerializableReceiver() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/serializability/boundWithSerializableReceiver.kt"); + } + + @TestMetadata("noReflect.kt") + public void testNoReflect() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/serializability/noReflect.kt"); + } + + @TestMetadata("reflectedIsNotSerialized.kt") + public void testReflectedIsNotSerialized() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/serializability/reflectedIsNotSerialized.kt"); + } + + @TestMetadata("withReflect.kt") + public void testWithReflect() throws Exception { + runTest("compiler/testData/codegen/box/callableReference/serializability/withReflect.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/casts") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Casts extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCasts() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/casts"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("as.kt") + public void testAs() throws Exception { + runTest("compiler/testData/codegen/box/casts/as.kt"); + } + + @TestMetadata("asForConstants.kt") + public void testAsForConstants() throws Exception { + runTest("compiler/testData/codegen/box/casts/asForConstants.kt"); + } + + @TestMetadata("asSafe.kt") + public void testAsSafe() throws Exception { + runTest("compiler/testData/codegen/box/casts/asSafe.kt"); + } + + @TestMetadata("asSafeFail.kt") + public void testAsSafeFail() throws Exception { + runTest("compiler/testData/codegen/box/casts/asSafeFail.kt"); + } + + @TestMetadata("asSafeForConstants.kt") + public void testAsSafeForConstants() throws Exception { + runTest("compiler/testData/codegen/box/casts/asSafeForConstants.kt"); + } + + @TestMetadata("asUnit.kt") + public void testAsUnit() throws Exception { + runTest("compiler/testData/codegen/box/casts/asUnit.kt"); + } + + @TestMetadata("asWithGeneric.kt") + public void testAsWithGeneric() throws Exception { + runTest("compiler/testData/codegen/box/casts/asWithGeneric.kt"); + } + + @TestMetadata("castGenericNull.kt") + public void testCastGenericNull() throws Exception { + runTest("compiler/testData/codegen/box/casts/castGenericNull.kt"); + } + + @TestMetadata("intersectionTypeMultipleBounds.kt") + public void testIntersectionTypeMultipleBounds() throws Exception { + runTest("compiler/testData/codegen/box/casts/intersectionTypeMultipleBounds.kt"); + } + + @TestMetadata("intersectionTypeMultipleBoundsImplicitReceiver.kt") + public void testIntersectionTypeMultipleBoundsImplicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/casts/intersectionTypeMultipleBoundsImplicitReceiver.kt"); + } + + @TestMetadata("intersectionTypeSmartcast.kt") + public void testIntersectionTypeSmartcast() throws Exception { + runTest("compiler/testData/codegen/box/casts/intersectionTypeSmartcast.kt"); + } + + @TestMetadata("intersectionTypeWithMultipleBoundsAsReceiver.kt") + public void testIntersectionTypeWithMultipleBoundsAsReceiver() throws Exception { + runTest("compiler/testData/codegen/box/casts/intersectionTypeWithMultipleBoundsAsReceiver.kt"); + } + + @TestMetadata("intersectionTypeWithoutGenericsAsReceiver.kt") + public void testIntersectionTypeWithoutGenericsAsReceiver() throws Exception { + runTest("compiler/testData/codegen/box/casts/intersectionTypeWithoutGenericsAsReceiver.kt"); + } + + @TestMetadata("is.kt") + public void testIs() throws Exception { + runTest("compiler/testData/codegen/box/casts/is.kt"); + } + + @TestMetadata("isNullablePrimitive.kt") + public void testIsNullablePrimitive() throws Exception { + runTest("compiler/testData/codegen/box/casts/isNullablePrimitive.kt"); + } + + @TestMetadata("kt22714.kt") + public void testKt22714() throws Exception { + runTest("compiler/testData/codegen/box/casts/kt22714.kt"); + } + + @TestMetadata("lambdaToUnitCast.kt") + public void testLambdaToUnitCast() throws Exception { + runTest("compiler/testData/codegen/box/casts/lambdaToUnitCast.kt"); + } + + @TestMetadata("notIs.kt") + public void testNotIs() throws Exception { + runTest("compiler/testData/codegen/box/casts/notIs.kt"); + } + + @TestMetadata("unitAsAny.kt") + public void testUnitAsAny() throws Exception { + runTest("compiler/testData/codegen/box/casts/unitAsAny.kt"); + } + + @TestMetadata("unitAsInt.kt") + public void testUnitAsInt() throws Exception { + runTest("compiler/testData/codegen/box/casts/unitAsInt.kt"); + } + + @TestMetadata("unitAsSafeAny.kt") + public void testUnitAsSafeAny() throws Exception { + runTest("compiler/testData/codegen/box/casts/unitAsSafeAny.kt"); + } + + @TestMetadata("unitNullableCast.kt") + public void testUnitNullableCast() throws Exception { + runTest("compiler/testData/codegen/box/casts/unitNullableCast.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/casts/functions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Functions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/casts/functions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("asFunKBig.kt") + public void testAsFunKBig() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/asFunKBig.kt"); + } + + @TestMetadata("asFunKSmall.kt") + public void testAsFunKSmall() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/asFunKSmall.kt"); + } + + @TestMetadata("isFunKBig.kt") + public void testIsFunKBig() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/isFunKBig.kt"); + } + + @TestMetadata("isFunKSmall.kt") + public void testIsFunKSmall() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/isFunKSmall.kt"); + } + + @TestMetadata("javaTypeIsFunK.kt") + public void testJavaTypeIsFunK() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/javaTypeIsFunK.kt"); + } + + @TestMetadata("reifiedAsFunKBig.kt") + public void testReifiedAsFunKBig() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/reifiedAsFunKBig.kt"); + } + + @TestMetadata("reifiedAsFunKSmall.kt") + public void testReifiedAsFunKSmall() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/reifiedAsFunKSmall.kt"); + } + + @TestMetadata("reifiedIsFunKBig.kt") + public void testReifiedIsFunKBig() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/reifiedIsFunKBig.kt"); + } + + @TestMetadata("reifiedIsFunKSmall.kt") + public void testReifiedIsFunKSmall() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/reifiedIsFunKSmall.kt"); + } + + @TestMetadata("reifiedSafeAsFunKBig.kt") + public void testReifiedSafeAsFunKBig() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/reifiedSafeAsFunKBig.kt"); + } + + @TestMetadata("reifiedSafeAsFunKSmall.kt") + public void testReifiedSafeAsFunKSmall() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/reifiedSafeAsFunKSmall.kt"); + } + + @TestMetadata("safeAsFunKBig.kt") + public void testSafeAsFunKBig() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/safeAsFunKBig.kt"); + } + + @TestMetadata("safeAsFunKSmall.kt") + public void testSafeAsFunKSmall() throws Exception { + runTest("compiler/testData/codegen/box/casts/functions/safeAsFunKSmall.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LiteralExpressionAsGenericArgument extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLiteralExpressionAsGenericArgument() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("binaryExpressionCast.kt") + public void testBinaryExpressionCast() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/binaryExpressionCast.kt"); + } + + @TestMetadata("javaBox.kt") + public void testJavaBox() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/javaBox.kt"); + } + + @TestMetadata("labeledExpressionCast.kt") + public void testLabeledExpressionCast() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/labeledExpressionCast.kt"); + } + + @TestMetadata("parenthesizedExpressionCast.kt") + public void testParenthesizedExpressionCast() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/parenthesizedExpressionCast.kt"); + } + + @TestMetadata("superConstructor.kt") + public void testSuperConstructor() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/superConstructor.kt"); + } + + @TestMetadata("unaryExpressionCast.kt") + public void testUnaryExpressionCast() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/unaryExpressionCast.kt"); + } + + @TestMetadata("vararg.kt") + public void testVararg() throws Exception { + runTest("compiler/testData/codegen/box/casts/literalExpressionAsGenericArgument/vararg.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/casts/mutableCollections") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MutableCollections extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMutableCollections() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/casts/mutableCollections"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("asWithMutable.kt") + public void testAsWithMutable() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/asWithMutable.kt"); + } + + @TestMetadata("isWithMutable.kt") + public void testIsWithMutable() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/isWithMutable.kt"); + } + + @TestMetadata("mutabilityMarkerInterfaces.kt") + public void testMutabilityMarkerInterfaces() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/mutabilityMarkerInterfaces.kt"); + } + + @TestMetadata("reifiedAsWithMutable.kt") + public void testReifiedAsWithMutable() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/reifiedAsWithMutable.kt"); + } + + @TestMetadata("reifiedIsWithMutable.kt") + public void testReifiedIsWithMutable() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/reifiedIsWithMutable.kt"); + } + + @TestMetadata("reifiedSafeAsWithMutable.kt") + public void testReifiedSafeAsWithMutable() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/reifiedSafeAsWithMutable.kt"); + } + + @TestMetadata("safeAsWithMutable.kt") + public void testSafeAsWithMutable() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/safeAsWithMutable.kt"); + } + + @TestMetadata("weirdMutableCasts.kt") + public void testWeirdMutableCasts() throws Exception { + runTest("compiler/testData/codegen/box/casts/mutableCollections/weirdMutableCasts.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/checkcastOptimization") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CheckcastOptimization extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCheckcastOptimization() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/checkcastOptimization"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt19128.kt") + public void testKt19128() throws Exception { + runTest("compiler/testData/codegen/box/checkcastOptimization/kt19128.kt"); + } + + @TestMetadata("kt19246.kt") + public void testKt19246() throws Exception { + runTest("compiler/testData/codegen/box/checkcastOptimization/kt19246.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/classLiteral") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ClassLiteral extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInClassLiteral() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/classLiteral"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("primitiveKClassEquality.kt") + public void testPrimitiveKClassEquality() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/primitiveKClassEquality.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/classLiteral/bound") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Bound extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBound() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/classLiteral/bound"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("javaIntrinsicWithSideEffect.kt") + public void testJavaIntrinsicWithSideEffect() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/bound/javaIntrinsicWithSideEffect.kt"); + } + + @TestMetadata("primitives.kt") + public void testPrimitives() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/bound/primitives.kt"); + } + + @TestMetadata("sideEffect.kt") + public void testSideEffect() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/bound/sideEffect.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/bound/simple.kt"); + } + + @TestMetadata("smartCast.kt") + public void testSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/bound/smartCast.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/classLiteral/java") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Java extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJava() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/classLiteral/java"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("java.kt") + public void testJava() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/java.kt"); + } + + @TestMetadata("javaObjectType.kt") + public void testJavaObjectType() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/javaObjectType.kt"); + } + + @TestMetadata("javaObjectTypeReified.kt") + public void testJavaObjectTypeReified() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/javaObjectTypeReified.kt"); + } + + @TestMetadata("javaPrimitiveType.kt") + public void testJavaPrimitiveType() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/javaPrimitiveType.kt"); + } + + @TestMetadata("javaPrimitiveTypeReified.kt") + public void testJavaPrimitiveTypeReified() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/javaPrimitiveTypeReified.kt"); + } + + @TestMetadata("javaReified.kt") + public void testJavaReified() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/javaReified.kt"); + } + + @TestMetadata("kt11943.kt") + public void testKt11943() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/kt11943.kt"); + } + + @TestMetadata("objectSuperConstructorCall.kt") + public void testObjectSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/classLiteral/java/objectSuperConstructorCall.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/classes") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Classes extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/classes"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boxPrimitiveTypeInClinitOfClassObject.kt") + public void testBoxPrimitiveTypeInClinitOfClassObject() throws Exception { + runTest("compiler/testData/codegen/box/classes/boxPrimitiveTypeInClinitOfClassObject.kt"); + } + + @TestMetadata("classNamedAsOldPackageFacade.kt") + public void testClassNamedAsOldPackageFacade() throws Exception { + runTest("compiler/testData/codegen/box/classes/classNamedAsOldPackageFacade.kt"); + } + + @TestMetadata("classObject.kt") + public void testClassObject() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObject.kt"); + } + + @TestMetadata("classObjectAsExtensionReceiver.kt") + public void testClassObjectAsExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectAsExtensionReceiver.kt"); + } + + @TestMetadata("classObjectAsStaticInitializer.kt") + public void testClassObjectAsStaticInitializer() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectAsStaticInitializer.kt"); + } + + @TestMetadata("classObjectField.kt") + public void testClassObjectField() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectField.kt"); + } + + @TestMetadata("classObjectInTrait.kt") + public void testClassObjectInTrait() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectInTrait.kt"); + } + + @TestMetadata("classObjectNotOfEnum.kt") + public void testClassObjectNotOfEnum() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectNotOfEnum.kt"); + } + + @TestMetadata("classObjectToString.kt") + public void testClassObjectToString() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectToString.kt"); + } + + @TestMetadata("classObjectWithPrivateGenericMember.kt") + public void testClassObjectWithPrivateGenericMember() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectWithPrivateGenericMember.kt"); + } + + @TestMetadata("classObjectsWithParentClasses.kt") + public void testClassObjectsWithParentClasses() throws Exception { + runTest("compiler/testData/codegen/box/classes/classObjectsWithParentClasses.kt"); + } + + @TestMetadata("comanionObjectFieldVsClassField.kt") + public void testComanionObjectFieldVsClassField() throws Exception { + runTest("compiler/testData/codegen/box/classes/comanionObjectFieldVsClassField.kt"); + } + + @TestMetadata("defaultObjectSameNamesAsInOuter.kt") + public void testDefaultObjectSameNamesAsInOuter() throws Exception { + runTest("compiler/testData/codegen/box/classes/defaultObjectSameNamesAsInOuter.kt"); + } + + @TestMetadata("delegateConstructorCallWithKeywords.kt") + public void testDelegateConstructorCallWithKeywords() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegateConstructorCallWithKeywords.kt"); + } + + @TestMetadata("delegation2.kt") + public void testDelegation2() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegation2.kt"); + } + + @TestMetadata("delegation3.kt") + public void testDelegation3() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegation3.kt"); + } + + @TestMetadata("delegation4.kt") + public void testDelegation4() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegation4.kt"); + } + + @TestMetadata("delegationGenericArg.kt") + public void testDelegationGenericArg() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegationGenericArg.kt"); + } + + @TestMetadata("delegationGenericArgUpperBound.kt") + public void testDelegationGenericArgUpperBound() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegationGenericArgUpperBound.kt"); + } + + @TestMetadata("delegationGenericLongArg.kt") + public void testDelegationGenericLongArg() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegationGenericLongArg.kt"); + } + + @TestMetadata("delegationJava.kt") + public void testDelegationJava() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegationJava.kt"); + } + + @TestMetadata("delegationMethodsWithArgs.kt") + public void testDelegationMethodsWithArgs() throws Exception { + runTest("compiler/testData/codegen/box/classes/delegationMethodsWithArgs.kt"); + } + + @TestMetadata("exceptionConstructor.kt") + public void testExceptionConstructor() throws Exception { + runTest("compiler/testData/codegen/box/classes/exceptionConstructor.kt"); + } + + @TestMetadata("extensionOnNamedClassObject.kt") + public void testExtensionOnNamedClassObject() throws Exception { + runTest("compiler/testData/codegen/box/classes/extensionOnNamedClassObject.kt"); + } + + @TestMetadata("funDelegation.kt") + public void testFunDelegation() throws Exception { + runTest("compiler/testData/codegen/box/classes/funDelegation.kt"); + } + + @TestMetadata("implementComparableInSubclass.kt") + public void testImplementComparableInSubclass() throws Exception { + runTest("compiler/testData/codegen/box/classes/implementComparableInSubclass.kt"); + } + + @TestMetadata("inheritSetAndHashSet.kt") + public void testInheritSetAndHashSet() throws Exception { + runTest("compiler/testData/codegen/box/classes/inheritSetAndHashSet.kt"); + } + + @TestMetadata("inheritance.kt") + public void testInheritance() throws Exception { + runTest("compiler/testData/codegen/box/classes/inheritance.kt"); + } + + @TestMetadata("inheritedInnerClass.kt") + public void testInheritedInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/classes/inheritedInnerClass.kt"); + } + + @TestMetadata("inheritedMethod.kt") + public void testInheritedMethod() throws Exception { + runTest("compiler/testData/codegen/box/classes/inheritedMethod.kt"); + } + + @TestMetadata("initializerBlock.kt") + public void testInitializerBlock() throws Exception { + runTest("compiler/testData/codegen/box/classes/initializerBlock.kt"); + } + + @TestMetadata("initializerBlockDImpl.kt") + public void testInitializerBlockDImpl() throws Exception { + runTest("compiler/testData/codegen/box/classes/initializerBlockDImpl.kt"); + } + + @TestMetadata("innerClass.kt") + public void testInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/classes/innerClass.kt"); + } + + @TestMetadata("kt1018.kt") + public void testKt1018() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1018.kt"); + } + + @TestMetadata("kt1120.kt") + public void testKt1120() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1120.kt"); + } + + @TestMetadata("kt1134.kt") + public void testKt1134() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1134.kt"); + } + + @TestMetadata("kt1157.kt") + public void testKt1157() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1157.kt"); + } + + @TestMetadata("kt1247.kt") + public void testKt1247() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1247.kt"); + } + + @TestMetadata("kt1345.kt") + public void testKt1345() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1345.kt"); + } + + @TestMetadata("kt1439.kt") + public void testKt1439() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1439.kt"); + } + + @TestMetadata("kt1535.kt") + public void testKt1535() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1535.kt"); + } + + @TestMetadata("kt1538.kt") + public void testKt1538() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1538.kt"); + } + + @TestMetadata("kt1578.kt") + public void testKt1578() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1578.kt"); + } + + @TestMetadata("kt1611.kt") + public void testKt1611() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1611.kt"); + } + + @TestMetadata("kt1721.kt") + public void testKt1721() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1721.kt"); + } + + @TestMetadata("kt1726.kt") + public void testKt1726() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1726.kt"); + } + + @TestMetadata("kt1759.kt") + public void testKt1759() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1759.kt"); + } + + @TestMetadata("kt1891.kt") + public void testKt1891() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1891.kt"); + } + + @TestMetadata("kt1918.kt") + public void testKt1918() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1918.kt"); + } + + @TestMetadata("kt1976.kt") + public void testKt1976() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1976.kt"); + } + + @TestMetadata("kt1980.kt") + public void testKt1980() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt1980.kt"); + } + + @TestMetadata("kt2224.kt") + public void testKt2224() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2224.kt"); + } + + @TestMetadata("kt2288.kt") + public void testKt2288() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2288.kt"); + } + + @TestMetadata("kt2384.kt") + public void testKt2384() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2384.kt"); + } + + @TestMetadata("kt2390.kt") + public void testKt2390() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2390.kt"); + } + + @TestMetadata("kt2391.kt") + public void testKt2391() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2391.kt"); + } + + @TestMetadata("kt2417.kt") + public void testKt2417() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2417.kt"); + } + + @TestMetadata("kt2477.kt") + public void testKt2477() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2477.kt"); + } + + @TestMetadata("kt2480.kt") + public void testKt2480() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2480.kt"); + } + + @TestMetadata("kt2482.kt") + public void testKt2482() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2482.kt"); + } + + @TestMetadata("kt2485.kt") + public void testKt2485() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2485.kt"); + } + + @TestMetadata("kt249.kt") + public void testKt249() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt249.kt"); + } + + @TestMetadata("kt2532.kt") + public void testKt2532() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2532.kt"); + } + + @TestMetadata("kt2566.kt") + public void testKt2566() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2566.kt"); + } + + @TestMetadata("kt2566_2.kt") + public void testKt2566_2() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2566_2.kt"); + } + + @TestMetadata("kt2607.kt") + public void testKt2607() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2607.kt"); + } + + @TestMetadata("kt2626.kt") + public void testKt2626() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2626.kt"); + } + + @TestMetadata("kt2711.kt") + public void testKt2711() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2711.kt"); + } + + @TestMetadata("kt2784.kt") + public void testKt2784() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt2784.kt"); + } + + @TestMetadata("kt285.kt") + public void testKt285() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt285.kt"); + } + + @TestMetadata("kt3001.kt") + public void testKt3001() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt3001.kt"); + } + + @TestMetadata("kt3114.kt") + public void testKt3114() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt3114.kt"); + } + + @TestMetadata("kt3414.kt") + public void testKt3414() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt3414.kt"); + } + + @TestMetadata("kt343.kt") + public void testKt343() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt343.kt"); + } + + @TestMetadata("kt3546.kt") + public void testKt3546() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt3546.kt"); + } + + @TestMetadata("kt454.kt") + public void testKt454() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt454.kt"); + } + + @TestMetadata("kt471.kt") + public void testKt471() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt471.kt"); + } + + @TestMetadata("kt48.kt") + public void testKt48() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt48.kt"); + } + + @TestMetadata("kt496.kt") + public void testKt496() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt496.kt"); + } + + @TestMetadata("kt500.kt") + public void testKt500() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt500.kt"); + } + + @TestMetadata("kt501.kt") + public void testKt501() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt501.kt"); + } + + @TestMetadata("kt504.kt") + public void testKt504() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt504.kt"); + } + + @TestMetadata("kt508.kt") + public void testKt508() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt508.kt"); + } + + @TestMetadata("kt5347.kt") + public void testKt5347() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt5347.kt"); + } + + @TestMetadata("kt6136.kt") + public void testKt6136() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt6136.kt"); + } + + @TestMetadata("kt633.kt") + public void testKt633() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt633.kt"); + } + + @TestMetadata("kt6816.kt") + public void testKt6816() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt6816.kt"); + } + + @TestMetadata("kt707.kt") + public void testKt707() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt707.kt"); + } + + @TestMetadata("kt723.kt") + public void testKt723() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt723.kt"); + } + + @TestMetadata("kt725.kt") + public void testKt725() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt725.kt"); + } + + @TestMetadata("kt8011.kt") + public void testKt8011() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt8011.kt"); + } + + @TestMetadata("kt8011a.kt") + public void testKt8011a() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt8011a.kt"); + } + + @TestMetadata("kt940.kt") + public void testKt940() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt940.kt"); + } + + @TestMetadata("kt9642.kt") + public void testKt9642() throws Exception { + runTest("compiler/testData/codegen/box/classes/kt9642.kt"); + } + + @TestMetadata("namedClassObject.kt") + public void testNamedClassObject() throws Exception { + runTest("compiler/testData/codegen/box/classes/namedClassObject.kt"); + } + + @TestMetadata("outerThis.kt") + public void testOuterThis() throws Exception { + runTest("compiler/testData/codegen/box/classes/outerThis.kt"); + } + + @TestMetadata("overloadBinaryOperator.kt") + public void testOverloadBinaryOperator() throws Exception { + runTest("compiler/testData/codegen/box/classes/overloadBinaryOperator.kt"); + } + + @TestMetadata("overloadPlusAssign.kt") + public void testOverloadPlusAssign() throws Exception { + runTest("compiler/testData/codegen/box/classes/overloadPlusAssign.kt"); + } + + @TestMetadata("overloadPlusAssignReturn.kt") + public void testOverloadPlusAssignReturn() throws Exception { + runTest("compiler/testData/codegen/box/classes/overloadPlusAssignReturn.kt"); + } + + @TestMetadata("overloadPlusToPlusAssign.kt") + public void testOverloadPlusToPlusAssign() throws Exception { + runTest("compiler/testData/codegen/box/classes/overloadPlusToPlusAssign.kt"); + } + + @TestMetadata("overloadUnaryOperator.kt") + public void testOverloadUnaryOperator() throws Exception { + runTest("compiler/testData/codegen/box/classes/overloadUnaryOperator.kt"); + } + + @TestMetadata("privateOuterFunctions.kt") + public void testPrivateOuterFunctions() throws Exception { + runTest("compiler/testData/codegen/box/classes/privateOuterFunctions.kt"); + } + + @TestMetadata("privateOuterProperty.kt") + public void testPrivateOuterProperty() throws Exception { + runTest("compiler/testData/codegen/box/classes/privateOuterProperty.kt"); + } + + @TestMetadata("privateToThis.kt") + public void testPrivateToThis() throws Exception { + runTest("compiler/testData/codegen/box/classes/privateToThis.kt"); + } + + @TestMetadata("propertyDelegation.kt") + public void testPropertyDelegation() throws Exception { + runTest("compiler/testData/codegen/box/classes/propertyDelegation.kt"); + } + + @TestMetadata("propertyInInitializer.kt") + public void testPropertyInInitializer() throws Exception { + runTest("compiler/testData/codegen/box/classes/propertyInInitializer.kt"); + } + + @TestMetadata("quotedClassName.kt") + public void testQuotedClassName() throws Exception { + runTest("compiler/testData/codegen/box/classes/quotedClassName.kt"); + } + + @TestMetadata("rightHandOverride.kt") + public void testRightHandOverride() throws Exception { + runTest("compiler/testData/codegen/box/classes/rightHandOverride.kt"); + } + + @TestMetadata("sealedInSameFile.kt") + public void testSealedInSameFile() throws Exception { + runTest("compiler/testData/codegen/box/classes/sealedInSameFile.kt"); + } + + @TestMetadata("selfcreate.kt") + public void testSelfcreate() throws Exception { + runTest("compiler/testData/codegen/box/classes/selfcreate.kt"); + } + + @TestMetadata("simpleBox.kt") + public void testSimpleBox() throws Exception { + runTest("compiler/testData/codegen/box/classes/simpleBox.kt"); + } + + @TestMetadata("superConstructorCallWithComplexArg.kt") + public void testSuperConstructorCallWithComplexArg() throws Exception { + runTest("compiler/testData/codegen/box/classes/superConstructorCallWithComplexArg.kt"); + } + + @TestMetadata("typedDelegation.kt") + public void testTypedDelegation() throws Exception { + runTest("compiler/testData/codegen/box/classes/typedDelegation.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/classes/inner") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Inner extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInner() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/classes/inner"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("instantiateInDerived.kt") + public void testInstantiateInDerived() throws Exception { + runTest("compiler/testData/codegen/box/classes/inner/instantiateInDerived.kt"); + } + + @TestMetadata("instantiateInDerivedLabeled.kt") + public void testInstantiateInDerivedLabeled() throws Exception { + runTest("compiler/testData/codegen/box/classes/inner/instantiateInDerivedLabeled.kt"); + } + + @TestMetadata("instantiateInSameClass.kt") + public void testInstantiateInSameClass() throws Exception { + runTest("compiler/testData/codegen/box/classes/inner/instantiateInSameClass.kt"); + } + + @TestMetadata("kt6708.kt") + public void testKt6708() throws Exception { + runTest("compiler/testData/codegen/box/classes/inner/kt6708.kt"); + } + + @TestMetadata("properOuter.kt") + public void testProperOuter() throws Exception { + runTest("compiler/testData/codegen/box/classes/inner/properOuter.kt"); + } + + @TestMetadata("properSuperLinking.kt") + public void testProperSuperLinking() throws Exception { + runTest("compiler/testData/codegen/box/classes/inner/properSuperLinking.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/closures") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Closures extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInClosures() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/closures"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anonymousObjectAsLastExpressionInLambda.kt") + public void testAnonymousObjectAsLastExpressionInLambda() throws Exception { + runTest("compiler/testData/codegen/box/closures/anonymousObjectAsLastExpressionInLambda.kt"); + } + + @TestMetadata("captureExtensionReceiver.kt") + public void testCaptureExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureExtensionReceiver.kt"); + } + + @TestMetadata("capturedLocalGenericFun.kt") + public void testCapturedLocalGenericFun() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedLocalGenericFun.kt"); + } + + @TestMetadata("closureInsideConstrucor.kt") + public void testClosureInsideConstrucor() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideConstrucor.kt"); + } + + @TestMetadata("closureOnTopLevel1.kt") + public void testClosureOnTopLevel1() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureOnTopLevel1.kt"); + } + + @TestMetadata("closureOnTopLevel2.kt") + public void testClosureOnTopLevel2() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureOnTopLevel2.kt"); + } + + @TestMetadata("closureWithParameter.kt") + public void testClosureWithParameter() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureWithParameter.kt"); + } + + @TestMetadata("closureWithParameterAndBoxing.kt") + public void testClosureWithParameterAndBoxing() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureWithParameterAndBoxing.kt"); + } + + @TestMetadata("doubleEnclosedLocalVariable.kt") + public void testDoubleEnclosedLocalVariable() throws Exception { + runTest("compiler/testData/codegen/box/closures/doubleEnclosedLocalVariable.kt"); + } + + @TestMetadata("enclosingLocalVariable.kt") + public void testEnclosingLocalVariable() throws Exception { + runTest("compiler/testData/codegen/box/closures/enclosingLocalVariable.kt"); + } + + @TestMetadata("enclosingThis.kt") + public void testEnclosingThis() throws Exception { + runTest("compiler/testData/codegen/box/closures/enclosingThis.kt"); + } + + @TestMetadata("extensionClosure.kt") + public void testExtensionClosure() throws Exception { + runTest("compiler/testData/codegen/box/closures/extensionClosure.kt"); + } + + @TestMetadata("kt10044.kt") + public void testKt10044() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt10044.kt"); + } + + @TestMetadata("kt11634.kt") + public void testKt11634() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt11634.kt"); + } + + @TestMetadata("kt11634_2.kt") + public void testKt11634_2() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt11634_2.kt"); + } + + @TestMetadata("kt11634_3.kt") + public void testKt11634_3() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt11634_3.kt"); + } + + @TestMetadata("kt11634_4.kt") + public void testKt11634_4() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt11634_4.kt"); + } + + @TestMetadata("kt2151.kt") + public void testKt2151() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt2151.kt"); + } + + @TestMetadata("kt3152.kt") + public void testKt3152() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt3152.kt"); + } + + @TestMetadata("kt3523.kt") + public void testKt3523() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt3523.kt"); + } + + @TestMetadata("kt3738.kt") + public void testKt3738() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt3738.kt"); + } + + @TestMetadata("kt3905.kt") + public void testKt3905() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt3905.kt"); + } + + @TestMetadata("kt4106.kt") + public void testKt4106() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt4106.kt"); + } + + @TestMetadata("kt4137.kt") + public void testKt4137() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt4137.kt"); + } + + @TestMetadata("kt5589.kt") + public void testKt5589() throws Exception { + runTest("compiler/testData/codegen/box/closures/kt5589.kt"); + } + + @TestMetadata("localClassFunClosure.kt") + public void testLocalClassFunClosure() throws Exception { + runTest("compiler/testData/codegen/box/closures/localClassFunClosure.kt"); + } + + @TestMetadata("localClassLambdaClosure.kt") + public void testLocalClassLambdaClosure() throws Exception { + runTest("compiler/testData/codegen/box/closures/localClassLambdaClosure.kt"); + } + + @TestMetadata("localFunctionInFunction.kt") + public void testLocalFunctionInFunction() throws Exception { + runTest("compiler/testData/codegen/box/closures/localFunctionInFunction.kt"); + } + + @TestMetadata("localFunctionInInitializer.kt") + public void testLocalFunctionInInitializer() throws Exception { + runTest("compiler/testData/codegen/box/closures/localFunctionInInitializer.kt"); + } + + @TestMetadata("localGenericFun.kt") + public void testLocalGenericFun() throws Exception { + runTest("compiler/testData/codegen/box/closures/localGenericFun.kt"); + } + + @TestMetadata("localReturn.kt") + public void testLocalReturn() throws Exception { + runTest("compiler/testData/codegen/box/closures/localReturn.kt"); + } + + @TestMetadata("localReturnWithAutolabel.kt") + public void testLocalReturnWithAutolabel() throws Exception { + runTest("compiler/testData/codegen/box/closures/localReturnWithAutolabel.kt"); + } + + @TestMetadata("noRefToOuter.kt") + public void testNoRefToOuter() throws Exception { + runTest("compiler/testData/codegen/box/closures/noRefToOuter.kt"); + } + + @TestMetadata("recursiveClosure.kt") + public void testRecursiveClosure() throws Exception { + runTest("compiler/testData/codegen/box/closures/recursiveClosure.kt"); + } + + @TestMetadata("refsAreSerializable.kt") + public void testRefsAreSerializable() throws Exception { + runTest("compiler/testData/codegen/box/closures/refsAreSerializable.kt"); + } + + @TestMetadata("simplestClosure.kt") + public void testSimplestClosure() throws Exception { + runTest("compiler/testData/codegen/box/closures/simplestClosure.kt"); + } + + @TestMetadata("simplestClosureAndBoxing.kt") + public void testSimplestClosureAndBoxing() throws Exception { + runTest("compiler/testData/codegen/box/closures/simplestClosureAndBoxing.kt"); + } + + @TestMetadata("subclosuresWithinInitializers.kt") + public void testSubclosuresWithinInitializers() throws Exception { + runTest("compiler/testData/codegen/box/closures/subclosuresWithinInitializers.kt"); + } + + @TestMetadata("underscoreParameters.kt") + public void testUnderscoreParameters() throws Exception { + runTest("compiler/testData/codegen/box/closures/underscoreParameters.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/closures/captureInSuperConstructorCall") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CaptureInSuperConstructorCall extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCaptureInSuperConstructorCall() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/closures/captureInSuperConstructorCall"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constructorParameterAndLocalCapturedInLambdaInLocalClass.kt") + public void testConstructorParameterAndLocalCapturedInLambdaInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/constructorParameterAndLocalCapturedInLambdaInLocalClass.kt"); + } + + @TestMetadata("constructorParameterCapturedInLambdaInLocalClass.kt") + public void testConstructorParameterCapturedInLambdaInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/constructorParameterCapturedInLambdaInLocalClass.kt"); + } + + @TestMetadata("constructorParameterCapturedInLambdaInLocalClass2.kt") + public void testConstructorParameterCapturedInLambdaInLocalClass2() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/constructorParameterCapturedInLambdaInLocalClass2.kt"); + } + + @TestMetadata("kt13454.kt") + public void testKt13454() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/kt13454.kt"); + } + + @TestMetadata("kt14148.kt") + public void testKt14148() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/kt14148.kt"); + } + + @TestMetadata("kt4174.kt") + public void testKt4174() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/kt4174.kt"); + } + + @TestMetadata("kt4174a.kt") + public void testKt4174a() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/kt4174a.kt"); + } + + @TestMetadata("localCapturedInAnonymousObjectInLocalClass.kt") + public void testLocalCapturedInAnonymousObjectInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/localCapturedInAnonymousObjectInLocalClass.kt"); + } + + @TestMetadata("localCapturedInAnonymousObjectInLocalClass2.kt") + public void testLocalCapturedInAnonymousObjectInLocalClass2() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/localCapturedInAnonymousObjectInLocalClass2.kt"); + } + + @TestMetadata("localCapturedInLambdaInInnerClassInLocalClass.kt") + public void testLocalCapturedInLambdaInInnerClassInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/localCapturedInLambdaInInnerClassInLocalClass.kt"); + } + + @TestMetadata("localCapturedInLambdaInLocalClass.kt") + public void testLocalCapturedInLambdaInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/localCapturedInLambdaInLocalClass.kt"); + } + + @TestMetadata("localFunctionCapturedInLambda.kt") + public void testLocalFunctionCapturedInLambda() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/localFunctionCapturedInLambda.kt"); + } + + @TestMetadata("outerAndLocalCapturedInLocalClass.kt") + public void testOuterAndLocalCapturedInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerAndLocalCapturedInLocalClass.kt"); + } + + @TestMetadata("outerCapturedAsImplicitThisInBoundReference.kt") + public void testOuterCapturedAsImplicitThisInBoundReference() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedAsImplicitThisInBoundReference.kt"); + } + + @TestMetadata("outerCapturedInFunctionLiteral.kt") + public void testOuterCapturedInFunctionLiteral() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInFunctionLiteral.kt"); + } + + @TestMetadata("outerCapturedInInlineLambda.kt") + public void testOuterCapturedInInlineLambda() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInInlineLambda.kt"); + } + + @TestMetadata("outerCapturedInInlineLambda2.kt") + public void testOuterCapturedInInlineLambda2() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInInlineLambda2.kt"); + } + + @TestMetadata("outerCapturedInLambda.kt") + public void testOuterCapturedInLambda() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInLambda.kt"); + } + + @TestMetadata("outerCapturedInLambda2.kt") + public void testOuterCapturedInLambda2() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInLambda2.kt"); + } + + @TestMetadata("outerCapturedInLambdaInSecondaryConstructor.kt") + public void testOuterCapturedInLambdaInSecondaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInLambdaInSecondaryConstructor.kt"); + } + + @TestMetadata("outerCapturedInLambdaInSubExpression.kt") + public void testOuterCapturedInLambdaInSubExpression() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInLambdaInSubExpression.kt"); + } + + @TestMetadata("outerCapturedInLocalClass.kt") + public void testOuterCapturedInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInLocalClass.kt"); + } + + @TestMetadata("outerCapturedInNestedLambda.kt") + public void testOuterCapturedInNestedLambda() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInNestedLambda.kt"); + } + + @TestMetadata("outerCapturedInNestedObject.kt") + public void testOuterCapturedInNestedObject() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInNestedObject.kt"); + } + + @TestMetadata("outerCapturedInObject.kt") + public void testOuterCapturedInObject() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInObject.kt"); + } + + @TestMetadata("outerCapturedInObject2.kt") + public void testOuterCapturedInObject2() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerCapturedInObject2.kt"); + } + + @TestMetadata("outerEnumEntryCapturedInLambdaInInnerClass.kt") + public void testOuterEnumEntryCapturedInLambdaInInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/outerEnumEntryCapturedInLambdaInInnerClass.kt"); + } + + @TestMetadata("properValueCapturedByClosure1.kt") + public void testProperValueCapturedByClosure1() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/properValueCapturedByClosure1.kt"); + } + + @TestMetadata("properValueCapturedByClosure2.kt") + public void testProperValueCapturedByClosure2() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/properValueCapturedByClosure2.kt"); + } + + @TestMetadata("referenceToCapturedVariablesInMultipleLambdas.kt") + public void testReferenceToCapturedVariablesInMultipleLambdas() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureInSuperConstructorCall/referenceToCapturedVariablesInMultipleLambdas.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/closures/captureOuterProperty") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CaptureOuterProperty extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCaptureOuterProperty() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/closures/captureOuterProperty"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("captureFunctionInProperty.kt") + public void testCaptureFunctionInProperty() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/captureFunctionInProperty.kt"); + } + + @TestMetadata("inFunction.kt") + public void testInFunction() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/inFunction.kt"); + } + + @TestMetadata("inProperty.kt") + public void testInProperty() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/inProperty.kt"); + } + + @TestMetadata("inPropertyDeepObjectChain.kt") + public void testInPropertyDeepObjectChain() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/inPropertyDeepObjectChain.kt"); + } + + @TestMetadata("inPropertyFromSuperClass.kt") + public void testInPropertyFromSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/inPropertyFromSuperClass.kt"); + } + + @TestMetadata("inPropertyFromSuperSuperClass.kt") + public void testInPropertyFromSuperSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/inPropertyFromSuperSuperClass.kt"); + } + + @TestMetadata("kt4176.kt") + public void testKt4176() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/kt4176.kt"); + } + + @TestMetadata("kt4656.kt") + public void testKt4656() throws Exception { + runTest("compiler/testData/codegen/box/closures/captureOuterProperty/kt4656.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/closures/capturedVarsOptimization") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CapturedVarsOptimization extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCapturedVarsOptimization() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/closures/capturedVarsOptimization"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("capturedInCrossinline.kt") + public void testCapturedInCrossinline() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/capturedInCrossinline.kt"); + } + + @TestMetadata("capturedInInlineOnlyAssign.kt") + public void testCapturedInInlineOnlyAssign() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/capturedInInlineOnlyAssign.kt"); + } + + @TestMetadata("capturedInInlineOnlyCAO.kt") + public void testCapturedInInlineOnlyCAO() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/capturedInInlineOnlyCAO.kt"); + } + + @TestMetadata("capturedInInlineOnlyIncrDecr.kt") + public void testCapturedInInlineOnlyIncrDecr() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/capturedInInlineOnlyIncrDecr.kt"); + } + + @TestMetadata("capturedInInlineOnlyIndexedCAO.kt") + public void testCapturedInInlineOnlyIndexedCAO() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/capturedInInlineOnlyIndexedCAO.kt"); + } + + @TestMetadata("capturedVarsOfSize2.kt") + public void testCapturedVarsOfSize2() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/capturedVarsOfSize2.kt"); + } + + @TestMetadata("kt17200.kt") + public void testKt17200() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/kt17200.kt"); + } + + @TestMetadata("kt17588.kt") + public void testKt17588() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/kt17588.kt"); + } + + @TestMetadata("sharedSlotsWithCapturedVars.kt") + public void testSharedSlotsWithCapturedVars() throws Exception { + runTest("compiler/testData/codegen/box/closures/capturedVarsOptimization/sharedSlotsWithCapturedVars.kt"); + } + + @TestMetadata("withCoroutines.kt") + public void testWithCoroutines_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/closures/capturedVarsOptimization/withCoroutines.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/closures/closureInsideClosure") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ClosureInsideClosure extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInClosureInsideClosure() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/closures/closureInsideClosure"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("localFunInsideLocalFun.kt") + public void testLocalFunInsideLocalFun() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideClosure/localFunInsideLocalFun.kt"); + } + + @TestMetadata("localFunInsideLocalFunDifferentSignatures.kt") + public void testLocalFunInsideLocalFunDifferentSignatures() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideClosure/localFunInsideLocalFunDifferentSignatures.kt"); + } + + @TestMetadata("propertyAndFunctionNameClash.kt") + public void testPropertyAndFunctionNameClash() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideClosure/propertyAndFunctionNameClash.kt"); + } + + @TestMetadata("threeLevels.kt") + public void testThreeLevels() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideClosure/threeLevels.kt"); + } + + @TestMetadata("threeLevelsDifferentSignatures.kt") + public void testThreeLevelsDifferentSignatures() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideClosure/threeLevelsDifferentSignatures.kt"); + } + + @TestMetadata("varAsFunInsideLocalFun.kt") + public void testVarAsFunInsideLocalFun() throws Exception { + runTest("compiler/testData/codegen/box/closures/closureInsideClosure/varAsFunInsideLocalFun.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/collectionLiterals") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CollectionLiterals extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCollectionLiterals() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/collectionLiterals"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("collectionLiteralsInArgumentPosition.kt") + public void testCollectionLiteralsInArgumentPosition() throws Exception { + runTest("compiler/testData/codegen/box/collectionLiterals/collectionLiteralsInArgumentPosition.kt"); + } + + @TestMetadata("collectionLiteralsWithConstants.kt") + public void testCollectionLiteralsWithConstants() throws Exception { + runTest("compiler/testData/codegen/box/collectionLiterals/collectionLiteralsWithConstants.kt"); + } + + @TestMetadata("collectionLiteralsWithVarargs.kt") + public void testCollectionLiteralsWithVarargs() throws Exception { + runTest("compiler/testData/codegen/box/collectionLiterals/collectionLiteralsWithVarargs.kt"); + } + + @TestMetadata("defaultAnnotationParameterValues.kt") + public void testDefaultAnnotationParameterValues() throws Exception { + runTest("compiler/testData/codegen/box/collectionLiterals/defaultAnnotationParameterValues.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/collections") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Collections extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCollections() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/collections"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("inSetWithSmartCast.kt") + public void testInSetWithSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/collections/inSetWithSmartCast.kt"); + } + + @TestMetadata("irrelevantImplCharSequence.kt") + public void testIrrelevantImplCharSequence() throws Exception { + runTest("compiler/testData/codegen/box/collections/irrelevantImplCharSequence.kt"); + } + + @TestMetadata("irrelevantImplCharSequenceKotlin.kt") + public void testIrrelevantImplCharSequenceKotlin() throws Exception { + runTest("compiler/testData/codegen/box/collections/irrelevantImplCharSequenceKotlin.kt"); + } + + @TestMetadata("irrelevantImplMutableListKotlin.kt") + public void testIrrelevantImplMutableListKotlin() throws Exception { + runTest("compiler/testData/codegen/box/collections/irrelevantImplMutableListKotlin.kt"); + } + + @TestMetadata("noStubsInJavaSuperClass.kt") + public void testNoStubsInJavaSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/collections/noStubsInJavaSuperClass.kt"); + } + + @TestMetadata("toArrayInJavaClass.kt") + public void testToArrayInJavaClass() throws Exception { + runTest("compiler/testData/codegen/box/collections/toArrayInJavaClass.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/compatibility") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Compatibility extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCompatibility() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/compatibility"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("dataClassEqualsHashCodeToString.kt") + public void testDataClassEqualsHashCodeToString() throws Exception { + runTest("compiler/testData/codegen/box/compatibility/dataClassEqualsHashCodeToString.kt"); + } + + @TestMetadata("privateCompanionObject.kt") + public void testPrivateCompanionObject() throws Exception { + runTest("compiler/testData/codegen/box/compatibility/privateCompanionObject.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/constants") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Constants extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConstants() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/constants"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constantsInWhen.kt") + public void testConstantsInWhen() throws Exception { + runTest("compiler/testData/codegen/box/constants/constantsInWhen.kt"); + } + + @TestMetadata("float.kt") + public void testFloat() throws Exception { + runTest("compiler/testData/codegen/box/constants/float.kt"); + } + + @TestMetadata("kt9532.kt") + public void testKt9532() throws Exception { + runTest("compiler/testData/codegen/box/constants/kt9532.kt"); + } + + @TestMetadata("kt9532_lv10.kt") + public void testKt9532_lv10() throws Exception { + runTest("compiler/testData/codegen/box/constants/kt9532_lv10.kt"); + } + + @TestMetadata("long.kt") + public void testLong() throws Exception { + runTest("compiler/testData/codegen/box/constants/long.kt"); + } + + @TestMetadata("privateConst.kt") + public void testPrivateConst() throws Exception { + runTest("compiler/testData/codegen/box/constants/privateConst.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/constructorCall") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ConstructorCall extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConstructorCall() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/constructorCall"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ControlStructures extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInControlStructures() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("bottles.kt") + public void testBottles() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/bottles.kt"); + } + + @TestMetadata("breakInFinally.kt") + public void testBreakInFinally() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakInFinally.kt"); + } + + @TestMetadata("compareBoxedIntegerToZero.kt") + public void testCompareBoxedIntegerToZero() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/compareBoxedIntegerToZero.kt"); + } + + @TestMetadata("conditionOfEmptyIf.kt") + public void testConditionOfEmptyIf() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/conditionOfEmptyIf.kt"); + } + + @TestMetadata("continueInExpr.kt") + public void testContinueInExpr() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/continueInExpr.kt"); + } + + @TestMetadata("continueInFor.kt") + public void testContinueInFor() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/continueInFor.kt"); + } + + @TestMetadata("continueInForCondition.kt") + public void testContinueInForCondition() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/continueInForCondition.kt"); + } + + @TestMetadata("continueInWhile.kt") + public void testContinueInWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/continueInWhile.kt"); + } + + @TestMetadata("continueToLabelInFor.kt") + public void testContinueToLabelInFor() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/continueToLabelInFor.kt"); + } + + @TestMetadata("doWhile.kt") + public void testDoWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/doWhile.kt"); + } + + @TestMetadata("doWhileFib.kt") + public void testDoWhileFib() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/doWhileFib.kt"); + } + + @TestMetadata("doWhileWithContinue.kt") + public void testDoWhileWithContinue() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/doWhileWithContinue.kt"); + } + + @TestMetadata("emptyDoWhile.kt") + public void testEmptyDoWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/emptyDoWhile.kt"); + } + + @TestMetadata("emptyFor.kt") + public void testEmptyFor() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/emptyFor.kt"); + } + + @TestMetadata("emptyWhile.kt") + public void testEmptyWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/emptyWhile.kt"); + } + + @TestMetadata("factorialTest.kt") + public void testFactorialTest() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/factorialTest.kt"); + } + + @TestMetadata("finallyOnEmptyReturn.kt") + public void testFinallyOnEmptyReturn() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/finallyOnEmptyReturn.kt"); + } + + @TestMetadata("forArrayList.kt") + public void testForArrayList() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forArrayList.kt"); + } + + @TestMetadata("forArrayListMultiDecl.kt") + public void testForArrayListMultiDecl() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forArrayListMultiDecl.kt"); + } + + @TestMetadata("forInCharSequence.kt") + public void testForInCharSequence() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequence.kt"); + } + + @TestMetadata("forInCharSequenceMut.kt") + public void testForInCharSequenceMut() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceMut.kt"); + } + + @TestMetadata("forInSmartCastToArray.kt") + public void testForInSmartCastToArray() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSmartCastToArray.kt"); + } + + @TestMetadata("forLoopMemberExtensionAll.kt") + public void testForLoopMemberExtensionAll() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forLoopMemberExtensionAll.kt"); + } + + @TestMetadata("forLoopMemberExtensionHasNext.kt") + public void testForLoopMemberExtensionHasNext() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forLoopMemberExtensionHasNext.kt"); + } + + @TestMetadata("forLoopMemberExtensionNext.kt") + public void testForLoopMemberExtensionNext() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forLoopMemberExtensionNext.kt"); + } + + @TestMetadata("forUserType.kt") + public void testForUserType() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forUserType.kt"); + } + + @TestMetadata("inRangeConditionsInWhen.kt") + public void testInRangeConditionsInWhen() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/inRangeConditionsInWhen.kt"); + } + + @TestMetadata("kt12908.kt") + public void testKt12908() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt12908.kt"); + } + + @TestMetadata("kt12908_2.kt") + public void testKt12908_2() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt12908_2.kt"); + } + + @TestMetadata("kt1441.kt") + public void testKt1441() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt1441.kt"); + } + + @TestMetadata("kt14839.kt") + public void testKt14839() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt14839.kt"); + } + + @TestMetadata("kt15726.kt") + public void testKt15726() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt15726.kt"); + } + + @TestMetadata("kt1688.kt") + public void testKt1688() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt1688.kt"); + } + + @TestMetadata("kt17110.kt") + public void testKt17110() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt17110.kt"); + } + + @TestMetadata("kt1742.kt") + public void testKt1742() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt1742.kt"); + } + + @TestMetadata("kt17590.kt") + public void testKt17590() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt17590.kt"); + } + + @TestMetadata("kt17590_long.kt") + public void testKt17590_long() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt17590_long.kt"); + } + + @TestMetadata("kt1899.kt") + public void testKt1899() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt1899.kt"); + } + + @TestMetadata("kt2147.kt") + public void testKt2147() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt2147.kt"); + } + + @TestMetadata("kt2259.kt") + public void testKt2259() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt2259.kt"); + } + + @TestMetadata("kt2291.kt") + public void testKt2291() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt2291.kt"); + } + + @TestMetadata("kt237.kt") + public void testKt237() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt237.kt"); + } + + @TestMetadata("kt2416.kt") + public void testKt2416() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt2416.kt"); + } + + @TestMetadata("kt2577.kt") + public void testKt2577() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt2577.kt"); + } + + @TestMetadata("kt2597.kt") + public void testKt2597() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt2597.kt"); + } + + @TestMetadata("kt299.kt") + public void testKt299() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt299.kt"); + } + + @TestMetadata("kt3087.kt") + public void testKt3087() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt3087.kt"); + } + + @TestMetadata("kt3203_1.kt") + public void testKt3203_1() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt3203_1.kt"); + } + + @TestMetadata("kt3203_2.kt") + public void testKt3203_2() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt3203_2.kt"); + } + + @TestMetadata("kt3273.kt") + public void testKt3273() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt3273.kt"); + } + + @TestMetadata("kt3280.kt") + public void testKt3280() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt3280.kt"); + } + + @TestMetadata("kt3574.kt") + public void testKt3574() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt3574.kt"); + } + + @TestMetadata("kt416.kt") + public void testKt416() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt416.kt"); + } + + @TestMetadata("kt513.kt") + public void testKt513() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt513.kt"); + } + + @TestMetadata("kt628.kt") + public void testKt628() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt628.kt"); + } + + @TestMetadata("kt769.kt") + public void testKt769() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt769.kt"); + } + + @TestMetadata("kt772.kt") + public void testKt772() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt772.kt"); + } + + @TestMetadata("kt773.kt") + public void testKt773() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt773.kt"); + } + + @TestMetadata("kt8148.kt") + public void testKt8148() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt8148.kt"); + } + + @TestMetadata("kt8148_break.kt") + public void testKt8148_break() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt8148_break.kt"); + } + + @TestMetadata("kt8148_continue.kt") + public void testKt8148_continue() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt8148_continue.kt"); + } + + @TestMetadata("kt870.kt") + public void testKt870() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt870.kt"); + } + + @TestMetadata("kt9022Return.kt") + public void testKt9022Return() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt9022Return.kt"); + } + + @TestMetadata("kt9022Throw.kt") + public void testKt9022Throw() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt9022Throw.kt"); + } + + @TestMetadata("kt910.kt") + public void testKt910() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt910.kt"); + } + + @TestMetadata("kt958.kt") + public void testKt958() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/kt958.kt"); + } + + @TestMetadata("longRange.kt") + public void testLongRange() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/longRange.kt"); + } + + @TestMetadata("parameterWithNameForFunctionType.kt") + public void testParameterWithNameForFunctionType() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/parameterWithNameForFunctionType.kt"); + } + + @TestMetadata("quicksort.kt") + public void testQuicksort() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/quicksort.kt"); + } + + @TestMetadata("tryCatchFinallyChain.kt") + public void testTryCatchFinallyChain() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchFinallyChain.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class BreakContinueInExpressions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBreakContinueInExpressions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("breakFromOuter.kt") + public void testBreakFromOuter() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/breakFromOuter.kt"); + } + + @TestMetadata("breakInDoWhile.kt") + public void testBreakInDoWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/breakInDoWhile.kt"); + } + + @TestMetadata("breakInExpr.kt") + public void testBreakInExpr() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/breakInExpr.kt"); + } + + @TestMetadata("continueInDoWhile.kt") + public void testContinueInDoWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/continueInDoWhile.kt"); + } + + @TestMetadata("continueInExpr.kt") + public void testContinueInExpr() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/continueInExpr.kt"); + } + + @TestMetadata("inlineWithStack.kt") + public void testInlineWithStack() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/inlineWithStack.kt"); + } + + @TestMetadata("innerLoopWithStack.kt") + public void testInnerLoopWithStack() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/innerLoopWithStack.kt"); + } + + @TestMetadata("kt14581.kt") + public void testKt14581() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/kt14581.kt"); + } + + @TestMetadata("kt16713.kt") + public void testKt16713() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/kt16713.kt"); + } + + @TestMetadata("kt16713_2.kt") + public void testKt16713_2() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/kt16713_2.kt"); + } + + @TestMetadata("kt17384.kt") + public void testKt17384() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/kt17384.kt"); + } + + @TestMetadata("kt9022And.kt") + public void testKt9022And() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/kt9022And.kt"); + } + + @TestMetadata("kt9022Or.kt") + public void testKt9022Or() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/kt9022Or.kt"); + } + + @TestMetadata("pathologicalDoWhile.kt") + public void testPathologicalDoWhile() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/pathologicalDoWhile.kt"); + } + + @TestMetadata("popSizes.kt") + public void testPopSizes() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/popSizes.kt"); + } + + @TestMetadata("tryFinally1.kt") + public void testTryFinally1() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/tryFinally1.kt"); + } + + @TestMetadata("tryFinally2.kt") + public void testTryFinally2() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/tryFinally2.kt"); + } + + @TestMetadata("whileTrueBreak.kt") + public void testWhileTrueBreak() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/breakContinueInExpressions/whileTrueBreak.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/forInArray") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInArray extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInArray() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/forInArray"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInArraySpecializedToUntil.kt") + public void testForInArraySpecializedToUntil() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInArraySpecializedToUntil.kt"); + } + + @TestMetadata("forInArrayWithArrayPropertyUpdatedInLoopBody.kt") + public void testForInArrayWithArrayPropertyUpdatedInLoopBody() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInArrayWithArrayPropertyUpdatedInLoopBody.kt"); + } + + @TestMetadata("forInArrayWithArrayVarUpdatedInLoopBody12.kt") + public void testForInArrayWithArrayVarUpdatedInLoopBody12() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInArrayWithArrayVarUpdatedInLoopBody12.kt"); + } + + @TestMetadata("forInArrayWithArrayVarUpdatedInLoopBody13.kt") + public void testForInArrayWithArrayVarUpdatedInLoopBody13() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInArrayWithArrayVarUpdatedInLoopBody13.kt"); + } + + @TestMetadata("forInDelegatedPropertyUpdatedInLoopBody.kt") + public void testForInDelegatedPropertyUpdatedInLoopBody() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInDelegatedPropertyUpdatedInLoopBody.kt"); + } + + @TestMetadata("forInFieldUpdatedInLoopBody.kt") + public void testForInFieldUpdatedInLoopBody() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forInFieldUpdatedInLoopBody.kt"); + } + + @TestMetadata("forIntArray.kt") + public void testForIntArray() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forIntArray.kt"); + } + + @TestMetadata("forNullableIntArray.kt") + public void testForNullableIntArray() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forNullableIntArray.kt"); + } + + @TestMetadata("forPrimitiveIntArray.kt") + public void testForPrimitiveIntArray() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArray/forPrimitiveIntArray.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInArrayWithIndex extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInArrayWithIndex() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInArrayOfObjectArrayWithIndex.kt") + public void testForInArrayOfObjectArrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInArrayOfObjectArrayWithIndex.kt"); + } + + @TestMetadata("forInArrayOfPrimArrayWithIndex.kt") + public void testForInArrayOfPrimArrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInArrayOfPrimArrayWithIndex.kt"); + } + + @TestMetadata("forInArrayWithIndexContinuesAsUnmodified.kt") + public void testForInArrayWithIndexContinuesAsUnmodified() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInArrayWithIndexContinuesAsUnmodified.kt"); + } + + @TestMetadata("forInArrrayWithIndexNoElementVar.kt") + public void testForInArrrayWithIndexNoElementVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInArrrayWithIndexNoElementVar.kt"); + } + + @TestMetadata("forInArrrayWithIndexNoIndexVar.kt") + public void testForInArrrayWithIndexNoIndexVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInArrrayWithIndexNoIndexVar.kt"); + } + + @TestMetadata("forInArrrayWithIndexWithExplicitlyTypedIndexVariable.kt") + public void testForInArrrayWithIndexWithExplicitlyTypedIndexVariable() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInArrrayWithIndexWithExplicitlyTypedIndexVariable.kt"); + } + + @TestMetadata("forInByteArrayWithIndexWithSmartCast.kt") + public void testForInByteArrayWithIndexWithSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInByteArrayWithIndexWithSmartCast.kt"); + } + + @TestMetadata("forInByteArrrayWithIndex.kt") + public void testForInByteArrrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInByteArrrayWithIndex.kt"); + } + + @TestMetadata("forInEmptyArrrayWithIndex.kt") + public void testForInEmptyArrrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInEmptyArrrayWithIndex.kt"); + } + + @TestMetadata("forInGenericArrayOfIntsWithIndex.kt") + public void testForInGenericArrayOfIntsWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInGenericArrayOfIntsWithIndex.kt"); + } + + @TestMetadata("forInGenericArrayOfIntsWithIndexWithSmartCast.kt") + public void testForInGenericArrayOfIntsWithIndexWithSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInGenericArrayOfIntsWithIndexWithSmartCast.kt"); + } + + @TestMetadata("forInGenericArrayWithIndex.kt") + public void testForInGenericArrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInGenericArrayWithIndex.kt"); + } + + @TestMetadata("forInIntArrayWithIndexWithSmartCast.kt") + public void testForInIntArrayWithIndexWithSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInIntArrayWithIndexWithSmartCast.kt"); + } + + @TestMetadata("forInIntArrrayWithIndex.kt") + public void testForInIntArrrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInIntArrrayWithIndex.kt"); + } + + @TestMetadata("forInObjectArrrayWithIndex.kt") + public void testForInObjectArrrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInObjectArrrayWithIndex.kt"); + } + + @TestMetadata("forInShortArrayWithIndexWithSmartCast.kt") + public void testForInShortArrayWithIndexWithSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInShortArrayWithIndexWithSmartCast.kt"); + } + + @TestMetadata("forInShortArrrayWithIndex.kt") + public void testForInShortArrrayWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInArrayWithIndex/forInShortArrrayWithIndex.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInCharSequenceWithIndex extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInCharSequenceWithIndex() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInCharSeqWithIndexStops.kt") + public void testForInCharSeqWithIndexStops() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInCharSeqWithIndexStops.kt"); + } + + @TestMetadata("forInCharSequenceWithIndex.kt") + public void testForInCharSequenceWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInCharSequenceWithIndex.kt"); + } + + @TestMetadata("forInEmptyStringWithIndex.kt") + public void testForInEmptyStringWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInEmptyStringWithIndex.kt"); + } + + @TestMetadata("forInStringWithIndex.kt") + public void testForInStringWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInStringWithIndex.kt"); + } + + @TestMetadata("forInStringWithIndexNoElementVar.kt") + public void testForInStringWithIndexNoElementVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInStringWithIndexNoElementVar.kt"); + } + + @TestMetadata("forInStringWithIndexNoIndexVar.kt") + public void testForInStringWithIndexNoIndexVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInStringWithIndexNoIndexVar.kt"); + } + + @TestMetadata("forInStringWithIndexWithExplicitlyTypedIndexVariable.kt") + public void testForInStringWithIndexWithExplicitlyTypedIndexVariable() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInCharSequenceWithIndex/forInStringWithIndexWithExplicitlyTypedIndexVariable.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInIterableWithIndex extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInIterableWithIndex() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInEmptyListWithIndex.kt") + public void testForInEmptyListWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex/forInEmptyListWithIndex.kt"); + } + + @TestMetadata("forInListWithIndex.kt") + public void testForInListWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex/forInListWithIndex.kt"); + } + + @TestMetadata("forInListWithIndexNoElementVar.kt") + public void testForInListWithIndexNoElementVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex/forInListWithIndexNoElementVar.kt"); + } + + @TestMetadata("forInListWithIndexNoIndexVar.kt") + public void testForInListWithIndexNoIndexVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex/forInListWithIndexNoIndexVar.kt"); + } + + @TestMetadata("forInListWithIndexThrowsCME.kt") + public void testForInListWithIndexThrowsCME() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex/forInListWithIndexThrowsCME.kt"); + } + + @TestMetadata("forInListWithIndexWithExplicitlyTypedIndexVariable.kt") + public void testForInListWithIndexWithExplicitlyTypedIndexVariable() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInIterableWithIndex/forInListWithIndexWithExplicitlyTypedIndexVariable.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInSequenceWithIndex extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInSequenceWithIndex() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInEmptySequenceWithIndex.kt") + public void testForInEmptySequenceWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex/forInEmptySequenceWithIndex.kt"); + } + + @TestMetadata("forInSequenceWithIndex.kt") + public void testForInSequenceWithIndex() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex/forInSequenceWithIndex.kt"); + } + + @TestMetadata("forInSequenceWithIndexNoElementVar.kt") + public void testForInSequenceWithIndexNoElementVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex/forInSequenceWithIndexNoElementVar.kt"); + } + + @TestMetadata("forInSequenceWithIndexNoIndexVar.kt") + public void testForInSequenceWithIndexNoIndexVar() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex/forInSequenceWithIndexNoIndexVar.kt"); + } + + @TestMetadata("forInSequenceWithIndexThrowsCME.kt") + public void testForInSequenceWithIndexThrowsCME() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex/forInSequenceWithIndexThrowsCME.kt"); + } + + @TestMetadata("forInSequenceWithIndexWithExplicitlyTypedIndexVariable.kt") + public void testForInSequenceWithIndexWithExplicitlyTypedIndexVariable() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/forInSequenceWithIndex/forInSequenceWithIndexWithExplicitlyTypedIndexVariable.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/returnsNothing") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ReturnsNothing extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInReturnsNothing() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/returnsNothing"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("ifElse.kt") + public void testIfElse() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/returnsNothing/ifElse.kt"); + } + + @TestMetadata("inlineMethod.kt") + public void testInlineMethod() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/returnsNothing/inlineMethod.kt"); + } + + @TestMetadata("propertyGetter.kt") + public void testPropertyGetter() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/returnsNothing/propertyGetter.kt"); + } + + @TestMetadata("tryCatch.kt") + public void testTryCatch() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/returnsNothing/tryCatch.kt"); + } + + @TestMetadata("when.kt") + public void testWhen() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/returnsNothing/when.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TryCatchInExpressions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTryCatchInExpressions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("catch.kt") + public void testCatch() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/catch.kt"); + } + + @TestMetadata("complexChain.kt") + public void testComplexChain() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/complexChain.kt"); + } + + @TestMetadata("deadTryCatch.kt") + public void testDeadTryCatch() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/deadTryCatch.kt"); + } + + @TestMetadata("differentTypes.kt") + public void testDifferentTypes() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/differentTypes.kt"); + } + + @TestMetadata("expectException.kt") + public void testExpectException() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/expectException.kt"); + } + + @TestMetadata("finally.kt") + public void testFinally() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/finally.kt"); + } + + @TestMetadata("inlineTryCatch.kt") + public void testInlineTryCatch() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/inlineTryCatch.kt"); + } + + @TestMetadata("inlineTryExpr.kt") + public void testInlineTryExpr() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/inlineTryExpr.kt"); + } + + @TestMetadata("inlineTryFinally.kt") + public void testInlineTryFinally() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/inlineTryFinally.kt"); + } + + @TestMetadata("kt17572.kt") + public void testKt17572() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17572.kt"); + } + + @TestMetadata("kt17572_2.kt") + public void testKt17572_2() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17572_2.kt"); + } + + @TestMetadata("kt17572_2_ext.kt") + public void testKt17572_2_ext() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17572_2_ext.kt"); + } + + @TestMetadata("kt17572_ext.kt") + public void testKt17572_ext() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17572_ext.kt"); + } + + @TestMetadata("kt17572_nested.kt") + public void testKt17572_nested() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17572_nested.kt"); + } + + @TestMetadata("kt17573.kt") + public void testKt17573() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17573.kt"); + } + + @TestMetadata("kt17573_nested.kt") + public void testKt17573_nested() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt17573_nested.kt"); + } + + @TestMetadata("kt8608.kt") + public void testKt8608() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt8608.kt"); + } + + @TestMetadata("kt9644try.kt") + public void testKt9644try() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/kt9644try.kt"); + } + + @TestMetadata("multipleCatchBlocks.kt") + public void testMultipleCatchBlocks() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/multipleCatchBlocks.kt"); + } + + @TestMetadata("splitTry.kt") + public void testSplitTry() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/splitTry.kt"); + } + + @TestMetadata("splitTryCorner1.kt") + public void testSplitTryCorner1() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/splitTryCorner1.kt"); + } + + @TestMetadata("splitTryCorner2.kt") + public void testSplitTryCorner2() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/splitTryCorner2.kt"); + } + + @TestMetadata("try.kt") + public void testTry() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/try.kt"); + } + + @TestMetadata("tryAfterTry.kt") + public void testTryAfterTry() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/tryAfterTry.kt"); + } + + @TestMetadata("tryAndBreak.kt") + public void testTryAndBreak() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/tryAndBreak.kt"); + } + + @TestMetadata("tryAndContinue.kt") + public void testTryAndContinue() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/tryAndContinue.kt"); + } + + @TestMetadata("tryCatchAfterWhileTrue.kt") + public void testTryCatchAfterWhileTrue() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/tryCatchAfterWhileTrue.kt"); + } + + @TestMetadata("tryInsideCatch.kt") + public void testTryInsideCatch() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/tryInsideCatch.kt"); + } + + @TestMetadata("tryInsideTry.kt") + public void testTryInsideTry() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/tryInsideTry.kt"); + } + + @TestMetadata("unmatchedInlineMarkers.kt") + public void testUnmatchedInlineMarkers() throws Exception { + runTest("compiler/testData/codegen/box/controlStructures/tryCatchInExpressions/unmatchedInlineMarkers.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Coroutines extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("32defaultParametersInSuspend.kt") + public void test32defaultParametersInSuspend_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/32defaultParametersInSuspend.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("accessorForSuspend.kt") + public void testAccessorForSuspend_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/accessorForSuspend.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + public void testAllFilesPresentInCoroutines() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("asyncIteratorNullMerge.kt") + public void testAsyncIteratorNullMerge_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/asyncIteratorNullMerge.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("asyncIteratorToList.kt") + public void testAsyncIteratorToList_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/asyncIteratorToList.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("asyncIterator.kt") + public void testAsyncIterator_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/asyncIterator.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("await.kt") + public void testAwait_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/await.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("beginWithExceptionNoHandleException.kt") + public void testBeginWithExceptionNoHandleException_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/beginWithExceptionNoHandleException.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("beginWithException.kt") + public void testBeginWithException_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/beginWithException.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("coercionToUnit.kt") + public void testCoercionToUnit_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/coercionToUnit.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("controllerAccessFromInnerLambda.kt") + public void testControllerAccessFromInnerLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controllerAccessFromInnerLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("coroutineContextInInlinedLambda.kt") + public void testCoroutineContextInInlinedLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/coroutineContextInInlinedLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("createCoroutineSafe.kt") + public void testCreateCoroutineSafe_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/createCoroutineSafe.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("createCoroutinesOnManualInstances.kt") + public void testCreateCoroutinesOnManualInstances_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/createCoroutinesOnManualInstances.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("crossInlineWithCapturedOuterReceiver.kt") + public void testCrossInlineWithCapturedOuterReceiver_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/crossInlineWithCapturedOuterReceiver.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("defaultParametersInSuspend.kt") + public void testDefaultParametersInSuspend_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/defaultParametersInSuspend.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("delegatedSuspendMember.kt") + public void testDelegatedSuspendMember_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/delegatedSuspendMember.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("dispatchResume.kt") + public void testDispatchResume_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/dispatchResume.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("emptyClosure.kt") + public void testEmptyClosure_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/emptyClosure.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("falseUnitCoercion.kt") + public void testFalseUnitCoercion_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/falseUnitCoercion.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("generate.kt") + public void testGenerate_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/generate.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("handleException.kt") + public void testHandleException_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/handleException.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("handleResultCallEmptyBody.kt") + public void testHandleResultCallEmptyBody_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/handleResultCallEmptyBody.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("handleResultNonUnitExpression.kt") + public void testHandleResultNonUnitExpression_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/handleResultNonUnitExpression.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("handleResultSuspended.kt") + public void testHandleResultSuspended_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/handleResultSuspended.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("indirectInlineUsedAsNonInline.kt") + public void testIndirectInlineUsedAsNonInline_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/indirectInlineUsedAsNonInline.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineFunInGenericClass.kt") + public void testInlineFunInGenericClass_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/inlineFunInGenericClass.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineGenericFunCalledFromSubclass.kt") + public void testInlineGenericFunCalledFromSubclass_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/inlineGenericFunCalledFromSubclass.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineSuspendFunction.kt") + public void testInlineSuspendFunction_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/inlineSuspendFunction.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlinedTryCatchFinally.kt") + public void testInlinedTryCatchFinally_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/inlinedTryCatchFinally.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("innerSuspensionCalls.kt") + public void testInnerSuspensionCalls_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/innerSuspensionCalls.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("instanceOfContinuation.kt") + public void testInstanceOfContinuation_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/instanceOfContinuation.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("iterateOverArray.kt") + public void testIterateOverArray_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/iterateOverArray.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("kt12958.kt") + public void testKt12958_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/kt12958.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("kt15016.kt") + public void testKt15016_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/kt15016.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("kt15017.kt") + public void testKt15017_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/kt15017.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("kt15930.kt") + public void testKt15930_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/kt15930.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("kt21605.kt") + public void testKt21605_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/kt21605.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("lastExpressionIsLoop.kt") + public void testLastExpressionIsLoop_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/lastExpressionIsLoop.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("lastStatementInc.kt") + public void testLastStatementInc_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/lastStatementInc.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("lastStementAssignment.kt") + public void testLastStementAssignment_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/lastStementAssignment.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("lastUnitExpression.kt") + public void testLastUnitExpression_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/lastUnitExpression.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("localCallableRef.kt") + public void testLocalCallableRef_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localCallableRef.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("localDelegate.kt") + public void testLocalDelegate_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localDelegate.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("longRangeInSuspendCall.kt") + public void testLongRangeInSuspendCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/longRangeInSuspendCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("longRangeInSuspendFun.kt") + public void testLongRangeInSuspendFun_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/longRangeInSuspendFun.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("mergeNullAndString.kt") + public void testMergeNullAndString_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/mergeNullAndString.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("multipleInvokeCallsInsideInlineLambda1.kt") + public void testMultipleInvokeCallsInsideInlineLambda1_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multipleInvokeCallsInsideInlineLambda1.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("multipleInvokeCallsInsideInlineLambda2.kt") + public void testMultipleInvokeCallsInsideInlineLambda2_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multipleInvokeCallsInsideInlineLambda2.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("multipleInvokeCallsInsideInlineLambda3.kt") + public void testMultipleInvokeCallsInsideInlineLambda3_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multipleInvokeCallsInsideInlineLambda3.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("multipleInvokeCalls.kt") + public void testMultipleInvokeCalls_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multipleInvokeCalls.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("nestedTryCatch.kt") + public void testNestedTryCatch_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/nestedTryCatch.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("noSuspensionPoints.kt") + public void testNoSuspensionPoints_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/noSuspensionPoints.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("nonLocalReturnFromInlineLambdaDeep.kt") + public void testNonLocalReturnFromInlineLambdaDeep_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/nonLocalReturnFromInlineLambdaDeep.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("nonLocalReturnFromInlineLambda.kt") + public void testNonLocalReturnFromInlineLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/nonLocalReturnFromInlineLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("overrideDefaultArgument.kt") + public void testOverrideDefaultArgument_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/overrideDefaultArgument.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("recursiveSuspend.kt") + public void testRecursiveSuspend_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/recursiveSuspend.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("returnByLabel.kt") + public void testReturnByLabel_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/returnByLabel.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simpleException.kt") + public void testSimpleException_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/simpleException.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simpleWithHandleResult.kt") + public void testSimpleWithHandleResult_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/simpleWithHandleResult.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("statementLikeLastExpression.kt") + public void testStatementLikeLastExpression_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/statementLikeLastExpression.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendCoroutineFromStateMachine.kt") + public void testSuspendCoroutineFromStateMachine_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendCoroutineFromStateMachine.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendDefaultImpl.kt") + public void testSuspendDefaultImpl_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendDefaultImpl.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendDelegation.kt") + public void testSuspendDelegation_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendDelegation.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendFromInlineLambda.kt") + public void testSuspendFromInlineLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFromInlineLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendFunImportedFromObject.kt") + public void testSuspendFunImportedFromObject_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunImportedFromObject.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendInCycle.kt") + public void testSuspendInCycle_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendInCycle.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendInTheMiddleOfObjectConstructionEvaluationOrder.kt") + public void testSuspendInTheMiddleOfObjectConstructionEvaluationOrder_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendInTheMiddleOfObjectConstructionEvaluationOrder.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendInTheMiddleOfObjectConstructionWithJumpOut.kt") + public void testSuspendInTheMiddleOfObjectConstructionWithJumpOut_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendInTheMiddleOfObjectConstructionWithJumpOut.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendInTheMiddleOfObjectConstruction.kt") + public void testSuspendInTheMiddleOfObjectConstruction_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendInTheMiddleOfObjectConstruction.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspensionInsideSafeCallWithElvis.kt") + public void testSuspensionInsideSafeCallWithElvis_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspensionInsideSafeCallWithElvis.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspensionInsideSafeCall.kt") + public void testSuspensionInsideSafeCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspensionInsideSafeCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tryCatchFinallyWithHandleResult.kt") + public void testTryCatchFinallyWithHandleResult_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tryCatchFinallyWithHandleResult.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tryCatchWithHandleResult.kt") + public void testTryCatchWithHandleResult_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tryCatchWithHandleResult.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tryFinallyInsideInlineLambda.kt") + public void testTryFinallyInsideInlineLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tryFinallyInsideInlineLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tryFinallyWithHandleResult.kt") + public void testTryFinallyWithHandleResult_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tryFinallyWithHandleResult.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("varValueConflictsWithTableSameSort.kt") + public void testVarValueConflictsWithTableSameSort_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/varValueConflictsWithTableSameSort.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("varValueConflictsWithTable.kt") + public void testVarValueConflictsWithTable_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/varValueConflictsWithTable.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/controlFlow") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ControlFlow extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInControlFlow() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/controlFlow"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("breakFinally.kt") + public void testBreakFinally_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/breakFinally.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("breakStatement.kt") + public void testBreakStatement_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/breakStatement.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("doWhileStatement.kt") + public void testDoWhileStatement_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/doWhileStatement.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("forContinue.kt") + public void testForContinue_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/forContinue.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("forStatement.kt") + public void testForStatement_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/forStatement.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("forWithStep.kt") + public void testForWithStep_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/forWithStep.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("ifStatement.kt") + public void testIfStatement_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/ifStatement.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("labeledWhile.kt") + public void testLabeledWhile_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/labeledWhile.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("returnFromFinally.kt") + public void testReturnFromFinally_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/returnFromFinally.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("switchLikeWhen.kt") + public void testSwitchLikeWhen_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/switchLikeWhen.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("throwFromCatch.kt") + public void testThrowFromCatch_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/throwFromCatch.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("throwInTryWithHandleResult.kt") + public void testThrowInTryWithHandleResult_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/throwInTryWithHandleResult.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("whileStatement.kt") + public void testWhileStatement_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/controlFlow/whileStatement.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/featureIntersection") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FeatureIntersection extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFeatureIntersection() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/featureIntersection"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("breakWithNonEmptyStack.kt") + public void testBreakWithNonEmptyStack_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/breakWithNonEmptyStack.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("delegate.kt") + public void testDelegate_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/delegate.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("destructuringInLambdas.kt") + public void testDestructuringInLambdas_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/destructuringInLambdas.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("safeCallOnTwoReceiversLong.kt") + public void testSafeCallOnTwoReceiversLong_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/safeCallOnTwoReceiversLong.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("safeCallOnTwoReceivers.kt") + public void testSafeCallOnTwoReceivers_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/safeCallOnTwoReceivers.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendDestructuringInLambdas.kt") + public void testSuspendDestructuringInLambdas_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/suspendDestructuringInLambdas.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendOperatorPlusAssign.kt") + public void testSuspendOperatorPlusAssign_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/suspendOperatorPlusAssign.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendOperatorPlusCallFromLambda.kt") + public void testSuspendOperatorPlusCallFromLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/suspendOperatorPlusCallFromLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendOperatorPlus.kt") + public void testSuspendOperatorPlus_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/suspendOperatorPlus.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Tailrec extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTailrec() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("controlFlowIf.kt") + public void testControlFlowIf_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/controlFlowIf.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("controlFlowWhen.kt") + public void testControlFlowWhen_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/controlFlowWhen.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("extention.kt") + public void testExtention_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/extention.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("infixCall.kt") + public void testInfixCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/infixCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("infixRecursiveCall.kt") + public void testInfixRecursiveCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/infixRecursiveCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("realIteratorFoldl.kt") + public void testRealIteratorFoldl_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/realIteratorFoldl.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("realStringEscape.kt") + public void testRealStringEscape_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/realStringEscape.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("realStringRepeat.kt") + public void testRealStringRepeat_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/realStringRepeat.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("returnInParentheses.kt") + public void testReturnInParentheses_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/returnInParentheses.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("sum.kt") + public void testSum_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/sum.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tailCallInBlockInParentheses.kt") + public void testTailCallInBlockInParentheses_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/tailCallInBlockInParentheses.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tailCallInParentheses.kt") + public void testTailCallInParentheses_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/tailCallInParentheses.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("whenWithIs.kt") + public void testWhenWithIs_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/featureIntersection/tailrec/whenWithIs.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class IntLikeVarSpilling extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIntLikeVarSpilling() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/intLikeVarSpilling"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("complicatedMerge.kt") + public void testComplicatedMerge_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/complicatedMerge.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("i2bResult.kt") + public void testI2bResult_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/i2bResult.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("loadFromBooleanArray.kt") + public void testLoadFromBooleanArray_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/loadFromBooleanArray.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("loadFromByteArray.kt") + public void testLoadFromByteArray_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/loadFromByteArray.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("noVariableInTable.kt") + public void testNoVariableInTable_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/noVariableInTable.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("sameIconst1ManyVars.kt") + public void testSameIconst1ManyVars_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/sameIconst1ManyVars.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("usedInMethodCall.kt") + public void testUsedInMethodCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/usedInMethodCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("usedInVarStore.kt") + public void testUsedInVarStore_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intLikeVarSpilling/usedInVarStore.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class IntrinsicSemantics extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIntrinsicSemantics() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/intrinsicSemantics"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("coroutineContextReceiverNotIntrinsic.kt") + public void testCoroutineContextReceiverNotIntrinsic_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/coroutineContextReceiverNotIntrinsic.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("coroutineContextReceiver.kt") + public void testCoroutineContextReceiver_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/coroutineContextReceiver.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("coroutineContext.kt") + public void testCoroutineContext_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/coroutineContext.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("intercepted.kt") + public void testIntercepted_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/intercepted.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("startCoroutineUninterceptedOrReturnInterception.kt") + public void testStartCoroutineUninterceptedOrReturnInterception_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/startCoroutineUninterceptedOrReturnInterception.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("startCoroutineUninterceptedOrReturn.kt") + public void testStartCoroutineUninterceptedOrReturn_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/startCoroutineUninterceptedOrReturn.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("startCoroutine.kt") + public void testStartCoroutine_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/startCoroutine.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendCoroutineUninterceptedOrReturn.kt") + public void testSuspendCoroutineUninterceptedOrReturn_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/intrinsicSemantics/suspendCoroutineUninterceptedOrReturn.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/localFunctions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LocalFunctions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocalFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/localFunctions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/localFunctions/anonymous") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Anonymous extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInAnonymous() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/localFunctions/anonymous"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/coroutines/localFunctions/anonymous/simple.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Named extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNamed() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/localFunctions/named"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("capturedParameters.kt") + public void testCapturedParameters_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/capturedParameters.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("capturedVariables.kt") + public void testCapturedVariables_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/capturedVariables.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("extension.kt") + public void testExtension_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/extension.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("infix.kt") + public void testInfix_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/infix.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("insideLambda.kt") + public void testInsideLambda_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/insideLambda.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("nestedLocals.kt") + public void testNestedLocals_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/nestedLocals.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simpleSuspensionPoint.kt") + public void testSimpleSuspensionPoint_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/simpleSuspensionPoint.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("stateMachine.kt") + public void testStateMachine_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/stateMachine.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("withArguments.kt") + public void testWithArguments_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/localFunctions/named/withArguments.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/multiModule") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MultiModule extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMultiModule() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/multiModule"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("inlineFunctionWithOptionalParam.kt") + public void testInlineFunctionWithOptionalParam_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/inlineFunctionWithOptionalParam.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineMultiModuleOverride.kt") + public void testInlineMultiModuleOverride_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleOverride.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineMultiModuleWithController.kt") + public void testInlineMultiModuleWithController_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithController.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineMultiModuleWithInnerInlining.kt") + public void testInlineMultiModuleWithInnerInlining_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithInnerInlining.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineMultiModule.kt") + public void testInlineMultiModule_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModule.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineTailCall.kt") + public void testInlineTailCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/inlineTailCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/multiModule/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/redundantLocalsElimination") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class RedundantLocalsElimination extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInRedundantLocalsElimination() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/redundantLocalsElimination"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("ktor_receivedMessage.kt") + public void testKtor_receivedMessage_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/redundantLocalsElimination/ktor_receivedMessage.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/stackUnwinding") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class StackUnwinding extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInStackUnwinding() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/stackUnwinding"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("exception.kt") + public void testException_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/stackUnwinding/exception.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineSuspendFunction.kt") + public void testInlineSuspendFunction_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/stackUnwinding/inlineSuspendFunction.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/stackUnwinding/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendInCycle.kt") + public void testSuspendInCycle_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/stackUnwinding/suspendInCycle.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SuspendFunctionAsCoroutine extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSuspendFunctionAsCoroutine() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("dispatchResume.kt") + public void testDispatchResume_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/dispatchResume.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("handleException.kt") + public void testHandleException_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/handleException.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("ifExpressionInsideCoroutine.kt") + public void testIfExpressionInsideCoroutine_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/ifExpressionInsideCoroutine.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineTwoReceivers.kt") + public void testInlineTwoReceivers_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/inlineTwoReceivers.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inline.kt") + public void testInline_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/inline.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("member.kt") + public void testMember_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/member.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("noinlineTwoReceivers.kt") + public void testNoinlineTwoReceivers_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/noinlineTwoReceivers.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("operators.kt") + public void testOperators_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/operators.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("privateFunctions.kt") + public void testPrivateFunctions_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/privateFunctions.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("privateInFile.kt") + public void testPrivateInFile_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/privateInFile.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("returnNoSuspend.kt") + public void testReturnNoSuspend_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/returnNoSuspend.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("superCallAbstractClass.kt") + public void testSuperCallAbstractClass_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/superCallAbstractClass.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("superCallInterface.kt") + public void testSuperCallInterface_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/superCallInterface.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("superCall.kt") + public void testSuperCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/superCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("withVariables.kt") + public void testWithVariables_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionAsCoroutine/withVariables.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionTypeCall") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SuspendFunctionTypeCall extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSuspendFunctionTypeCall() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/suspendFunctionTypeCall"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("localVal.kt") + public void testLocalVal_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionTypeCall/localVal.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("manyParameters.kt") + public void testManyParameters_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionTypeCall/manyParameters.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/suspendFunctionTypeCall/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendModifier.kt") + public void testSuspendModifier() throws Exception { + runTest("compiler/testData/codegen/box/coroutines/suspendFunctionTypeCall/suspendModifier.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TailCallOptimizations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTailCallOptimizations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/tailCallOptimizations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("crossinline.kt") + public void testCrossinline_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/crossinline.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineWithStateMachine.kt") + public void testInlineWithStateMachine_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/inlineWithStateMachine.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("inlineWithoutStateMachine.kt") + public void testInlineWithoutStateMachine_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/inlineWithoutStateMachine.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("simple.kt") + public void testSimple_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/simple.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tryCatch.kt") + public void testTryCatch_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/tryCatch.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("unreachable.kt") + public void testUnreachable_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/unreachable.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("whenUnit.kt") + public void testWhenUnit_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailCallOptimizations/whenUnit.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/tailOperations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TailOperations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTailOperations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/tailOperations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("suspendWithIf.kt") + public void testSuspendWithIf_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailOperations/suspendWithIf.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendWithTryCatch.kt") + public void testSuspendWithTryCatch_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailOperations/suspendWithTryCatch.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendWithWhen.kt") + public void testSuspendWithWhen_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailOperations/suspendWithWhen.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("tailInlining.kt") + public void testTailInlining_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/tailOperations/tailInlining.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/unitTypeReturn") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class UnitTypeReturn extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInUnitTypeReturn() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/unitTypeReturn"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("coroutineNonLocalReturn.kt") + public void testCoroutineNonLocalReturn_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/unitTypeReturn/coroutineNonLocalReturn.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("coroutineReturn.kt") + public void testCoroutineReturn_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/unitTypeReturn/coroutineReturn.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendNonLocalReturn.kt") + public void testSuspendNonLocalReturn_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/unitTypeReturn/suspendNonLocalReturn.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("suspendReturn.kt") + public void testSuspendReturn_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/unitTypeReturn/suspendReturn.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("unitSafeCall.kt") + public void testUnitSafeCall_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/unitTypeReturn/unitSafeCall.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + + @TestMetadata("compiler/testData/codegen/box/coroutines/varSpilling") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class VarSpilling extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInVarSpilling() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/coroutines/varSpilling"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt19475.kt") + public void testKt19475_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/varSpilling/kt19475.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + + @TestMetadata("nullSpilling.kt") + public void testNullSpilling_1_2() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/coroutines/varSpilling/nullSpilling.kt"); + doTestWithCoroutinesPackageReplacement(fileName, "kotlin.coroutines.experimental"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/dataClasses") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DataClasses extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDataClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/dataClasses"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayParams.kt") + public void testArrayParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/arrayParams.kt"); + } + + @TestMetadata("changingVarParam.kt") + public void testChangingVarParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/changingVarParam.kt"); + } + + @TestMetadata("doubleParam.kt") + public void testDoubleParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/doubleParam.kt"); + } + + @TestMetadata("floatParam.kt") + public void testFloatParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/floatParam.kt"); + } + + @TestMetadata("genericParam.kt") + public void testGenericParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/genericParam.kt"); + } + + @TestMetadata("kt5002.kt") + public void testKt5002() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/kt5002.kt"); + } + + @TestMetadata("mixedParams.kt") + public void testMixedParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/mixedParams.kt"); + } + + @TestMetadata("multiDeclaration.kt") + public void testMultiDeclaration() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/multiDeclaration.kt"); + } + + @TestMetadata("multiDeclarationFor.kt") + public void testMultiDeclarationFor() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/multiDeclarationFor.kt"); + } + + @TestMetadata("nonTrivialFinalMemberInSuperClass.kt") + public void testNonTrivialFinalMemberInSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/nonTrivialFinalMemberInSuperClass.kt"); + } + + @TestMetadata("nonTrivialMemberInSuperClass.kt") + public void testNonTrivialMemberInSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/nonTrivialMemberInSuperClass.kt"); + } + + @TestMetadata("privateValParams.kt") + public void testPrivateValParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/privateValParams.kt"); + } + + @TestMetadata("twoValParams.kt") + public void testTwoValParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/twoValParams.kt"); + } + + @TestMetadata("twoVarParams.kt") + public void testTwoVarParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/twoVarParams.kt"); + } + + @TestMetadata("unitComponent.kt") + public void testUnitComponent() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/unitComponent.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/dataClasses/copy") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Copy extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCopy() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/dataClasses/copy"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constructorWithDefaultParam.kt") + public void testConstructorWithDefaultParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/constructorWithDefaultParam.kt"); + } + + @TestMetadata("copyInObjectNestedDataClass.kt") + public void testCopyInObjectNestedDataClass() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/copyInObjectNestedDataClass.kt"); + } + + @TestMetadata("kt12708.kt") + public void testKt12708() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/kt12708.kt"); + } + + @TestMetadata("kt3033.kt") + public void testKt3033() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/kt3033.kt"); + } + + @TestMetadata("valInConstructorParams.kt") + public void testValInConstructorParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/valInConstructorParams.kt"); + } + + @TestMetadata("varInConstructorParams.kt") + public void testVarInConstructorParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/varInConstructorParams.kt"); + } + + @TestMetadata("withGenericParameter.kt") + public void testWithGenericParameter() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/withGenericParameter.kt"); + } + + @TestMetadata("withSecondaryConstructor.kt") + public void testWithSecondaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/copy/withSecondaryConstructor.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/dataClasses/equals") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Equals extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEquals() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/dataClasses/equals"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("alreadyDeclared.kt") + public void testAlreadyDeclared() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/alreadyDeclared.kt"); + } + + @TestMetadata("alreadyDeclaredWrongSignature.kt") + public void testAlreadyDeclaredWrongSignature() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/alreadyDeclaredWrongSignature.kt"); + } + + @TestMetadata("genericarray.kt") + public void testGenericarray() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/genericarray.kt"); + } + + @TestMetadata("intarray.kt") + public void testIntarray() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/intarray.kt"); + } + + @TestMetadata("null.kt") + public void testNull() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/null.kt"); + } + + @TestMetadata("nullother.kt") + public void testNullother() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/nullother.kt"); + } + + @TestMetadata("sameinstance.kt") + public void testSameinstance() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/sameinstance.kt"); + } + + @TestMetadata("typeParameterWithInterfaceBound.kt") + public void testTypeParameterWithInterfaceBound() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/equals/typeParameterWithInterfaceBound.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/dataClasses/hashCode") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class HashCode extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInHashCode() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/dataClasses/hashCode"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("alreadyDeclared.kt") + public void testAlreadyDeclared() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/alreadyDeclared.kt"); + } + + @TestMetadata("alreadyDeclaredWrongSignature.kt") + public void testAlreadyDeclaredWrongSignature() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/alreadyDeclaredWrongSignature.kt"); + } + + @TestMetadata("array.kt") + public void testArray() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/array.kt"); + } + + @TestMetadata("boolean.kt") + public void testBoolean() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/boolean.kt"); + } + + @TestMetadata("byte.kt") + public void testByte() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/byte.kt"); + } + + @TestMetadata("char.kt") + public void testChar() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/char.kt"); + } + + @TestMetadata("double.kt") + public void testDouble() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/double.kt"); + } + + @TestMetadata("float.kt") + public void testFloat() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/float.kt"); + } + + @TestMetadata("genericNull.kt") + public void testGenericNull() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/genericNull.kt"); + } + + @TestMetadata("int.kt") + public void testInt() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/int.kt"); + } + + @TestMetadata("long.kt") + public void testLong() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/long.kt"); + } + + @TestMetadata("null.kt") + public void testNull() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/null.kt"); + } + + @TestMetadata("short.kt") + public void testShort() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/hashCode/short.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/dataClasses/toString") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ToString extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInToString() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/dataClasses/toString"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("alreadyDeclared.kt") + public void testAlreadyDeclared() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/alreadyDeclared.kt"); + } + + @TestMetadata("alreadyDeclaredWrongSignature.kt") + public void testAlreadyDeclaredWrongSignature() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/alreadyDeclaredWrongSignature.kt"); + } + + @TestMetadata("arrayParams.kt") + public void testArrayParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/arrayParams.kt"); + } + + @TestMetadata("changingVarParam.kt") + public void testChangingVarParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/changingVarParam.kt"); + } + + @TestMetadata("genericParam.kt") + public void testGenericParam() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/genericParam.kt"); + } + + @TestMetadata("mixedParams.kt") + public void testMixedParams() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/mixedParams.kt"); + } + + @TestMetadata("unitComponent.kt") + public void testUnitComponent() throws Exception { + runTest("compiler/testData/codegen/box/dataClasses/toString/unitComponent.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/deadCodeElimination") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DeadCodeElimination extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDeadCodeElimination() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/deadCodeElimination"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("emptyVariableRange.kt") + public void testEmptyVariableRange() throws Exception { + runTest("compiler/testData/codegen/box/deadCodeElimination/emptyVariableRange.kt"); + } + + @TestMetadata("intersectingVariableRange.kt") + public void testIntersectingVariableRange() throws Exception { + runTest("compiler/testData/codegen/box/deadCodeElimination/intersectingVariableRange.kt"); + } + + @TestMetadata("intersectingVariableRangeInFinally.kt") + public void testIntersectingVariableRangeInFinally() throws Exception { + runTest("compiler/testData/codegen/box/deadCodeElimination/intersectingVariableRangeInFinally.kt"); + } + + @TestMetadata("kt14357.kt") + public void testKt14357() throws Exception { + runTest("compiler/testData/codegen/box/deadCodeElimination/kt14357.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/defaultArguments") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DefaultArguments extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDefaultArguments() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/defaultArguments"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("implementedByFake.kt") + public void testImplementedByFake() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/implementedByFake.kt"); + } + + @TestMetadata("implementedByFake2.kt") + public void testImplementedByFake2() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/implementedByFake2.kt"); + } + + @TestMetadata("implementedByFake3.kt") + public void testImplementedByFake3() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/implementedByFake3.kt"); + } + + @TestMetadata("inheritedFromInterfaceViaAbstractSuperclass.kt") + public void testInheritedFromInterfaceViaAbstractSuperclass() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/inheritedFromInterfaceViaAbstractSuperclass.kt"); + } + + @TestMetadata("kt6382.kt") + public void testKt6382() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/kt6382.kt"); + } + + @TestMetadata("protected.kt") + public void testProtected() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/protected.kt"); + } + + @TestMetadata("simpleFromOtherFile.kt") + public void testSimpleFromOtherFile() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/simpleFromOtherFile.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/defaultArguments/constructor") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Constructor extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConstructor() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/defaultArguments/constructor"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotation.kt") + public void testAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/annotation.kt"); + } + + @TestMetadata("annotationWithEmptyArray.kt") + public void testAnnotationWithEmptyArray() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/annotationWithEmptyArray.kt"); + } + + @TestMetadata("defArgs1.kt") + public void testDefArgs1() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/defArgs1.kt"); + } + + @TestMetadata("defArgs1InnerClass.kt") + public void testDefArgs1InnerClass() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/defArgs1InnerClass.kt"); + } + + @TestMetadata("defArgs2.kt") + public void testDefArgs2() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/defArgs2.kt"); + } + + @TestMetadata("doubleDefArgs1InnerClass.kt") + public void testDoubleDefArgs1InnerClass() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/doubleDefArgs1InnerClass.kt"); + } + + @TestMetadata("enum.kt") + public void testEnum() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/enum.kt"); + } + + @TestMetadata("enumWithOneDefArg.kt") + public void testEnumWithOneDefArg() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/enumWithOneDefArg.kt"); + } + + @TestMetadata("enumWithTwoDefArgs.kt") + public void testEnumWithTwoDefArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/enumWithTwoDefArgs.kt"); + } + + @TestMetadata("enumWithTwoDoubleDefArgs.kt") + public void testEnumWithTwoDoubleDefArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/enumWithTwoDoubleDefArgs.kt"); + } + + @TestMetadata("kt2852.kt") + public void testKt2852() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/kt2852.kt"); + } + + @TestMetadata("kt3060.kt") + public void testKt3060() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/constructor/kt3060.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/defaultArguments/convention") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Convention extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConvention() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/defaultArguments/convention"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("incWithDefaultInGetter.kt") + public void testIncWithDefaultInGetter() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/convention/incWithDefaultInGetter.kt"); + } + + @TestMetadata("kt9140.kt") + public void testKt9140() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/convention/kt9140.kt"); + } + + @TestMetadata("plusAssignWithDefaultInGetter.kt") + public void testPlusAssignWithDefaultInGetter() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/convention/plusAssignWithDefaultInGetter.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/defaultArguments/function") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Function extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractClass.kt") + public void testAbstractClass() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/abstractClass.kt"); + } + + public void testAllFilesPresentInFunction() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/defaultArguments/function"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("complexInheritance.kt") + public void testComplexInheritance() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/complexInheritance.kt"); + } + + @TestMetadata("covariantOverride.kt") + public void testCovariantOverride() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/covariantOverride.kt"); + } + + @TestMetadata("covariantOverrideGeneric.kt") + public void testCovariantOverrideGeneric() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/covariantOverrideGeneric.kt"); + } + + @TestMetadata("extensionFunctionManyArgs.kt") + public void testExtensionFunctionManyArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extensionFunctionManyArgs.kt"); + } + + @TestMetadata("extentionFunction.kt") + public void testExtentionFunction() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extentionFunction.kt"); + } + + @TestMetadata("extentionFunctionDouble.kt") + public void testExtentionFunctionDouble() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extentionFunctionDouble.kt"); + } + + @TestMetadata("extentionFunctionDoubleTwoArgs.kt") + public void testExtentionFunctionDoubleTwoArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extentionFunctionDoubleTwoArgs.kt"); + } + + @TestMetadata("extentionFunctionInClassObject.kt") + public void testExtentionFunctionInClassObject() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extentionFunctionInClassObject.kt"); + } + + @TestMetadata("extentionFunctionInObject.kt") + public void testExtentionFunctionInObject() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extentionFunctionInObject.kt"); + } + + @TestMetadata("extentionFunctionWithOneDefArg.kt") + public void testExtentionFunctionWithOneDefArg() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/extentionFunctionWithOneDefArg.kt"); + } + + @TestMetadata("funInTrait.kt") + public void testFunInTrait() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/funInTrait.kt"); + } + + @TestMetadata("funInTraitChain.kt") + public void testFunInTraitChain() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/funInTraitChain.kt"); + } + + @TestMetadata("innerExtentionFunction.kt") + public void testInnerExtentionFunction() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/innerExtentionFunction.kt"); + } + + @TestMetadata("innerExtentionFunctionDouble.kt") + public void testInnerExtentionFunctionDouble() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/innerExtentionFunctionDouble.kt"); + } + + @TestMetadata("innerExtentionFunctionDoubleTwoArgs.kt") + public void testInnerExtentionFunctionDoubleTwoArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/innerExtentionFunctionDoubleTwoArgs.kt"); + } + + @TestMetadata("innerExtentionFunctionManyArgs.kt") + public void testInnerExtentionFunctionManyArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/innerExtentionFunctionManyArgs.kt"); + } + + @TestMetadata("kt5232.kt") + public void testKt5232() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/kt5232.kt"); + } + + @TestMetadata("memberFunctionManyArgs.kt") + public void testMemberFunctionManyArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/memberFunctionManyArgs.kt"); + } + + @TestMetadata("mixingNamedAndPositioned.kt") + public void testMixingNamedAndPositioned() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/mixingNamedAndPositioned.kt"); + } + + @TestMetadata("topLevelManyArgs.kt") + public void testTopLevelManyArgs() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/topLevelManyArgs.kt"); + } + + @TestMetadata("trait.kt") + public void testTrait() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/function/trait.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/defaultArguments/private") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Private extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPrivate() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/defaultArguments/private"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("memberExtensionFunction.kt") + public void testMemberExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/private/memberExtensionFunction.kt"); + } + + @TestMetadata("memberFunction.kt") + public void testMemberFunction() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/private/memberFunction.kt"); + } + + @TestMetadata("primaryConstructor.kt") + public void testPrimaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/private/primaryConstructor.kt"); + } + + @TestMetadata("secondaryConstructor.kt") + public void testSecondaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/private/secondaryConstructor.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/defaultArguments/signature") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Signature extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSignature() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/defaultArguments/signature"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt2789.kt") + public void testKt2789() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/signature/kt2789.kt"); + } + + @TestMetadata("kt9428.kt") + public void testKt9428() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/signature/kt9428.kt"); + } + + @TestMetadata("kt9924.kt") + public void testKt9924() throws Exception { + runTest("compiler/testData/codegen/box/defaultArguments/signature/kt9924.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/delegatedProperty") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DelegatedProperty extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessTopLevelDelegatedPropertyInClinit.kt") + public void testAccessTopLevelDelegatedPropertyInClinit() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/accessTopLevelDelegatedPropertyInClinit.kt"); + } + + public void testAllFilesPresentInDelegatedProperty() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/delegatedProperty"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("capturePropertyInClosure.kt") + public void testCapturePropertyInClosure() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/capturePropertyInClosure.kt"); + } + + @TestMetadata("castGetReturnType.kt") + public void testCastGetReturnType() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/castGetReturnType.kt"); + } + + @TestMetadata("castSetParameter.kt") + public void testCastSetParameter() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/castSetParameter.kt"); + } + + @TestMetadata("delegateAsInnerClass.kt") + public void testDelegateAsInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateAsInnerClass.kt"); + } + + @TestMetadata("delegateByOtherProperty.kt") + public void testDelegateByOtherProperty() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateByOtherProperty.kt"); + } + + @TestMetadata("delegateByTopLevelFun.kt") + public void testDelegateByTopLevelFun() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateByTopLevelFun.kt"); + } + + @TestMetadata("delegateByTopLevelProperty.kt") + public void testDelegateByTopLevelProperty() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateByTopLevelProperty.kt"); + } + + @TestMetadata("delegateForExtProperty.kt") + public void testDelegateForExtProperty() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateForExtProperty.kt"); + } + + @TestMetadata("delegateForExtPropertyInClass.kt") + public void testDelegateForExtPropertyInClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateForExtPropertyInClass.kt"); + } + + @TestMetadata("delegateWithPrivateSet.kt") + public void testDelegateWithPrivateSet() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); + } + + @TestMetadata("extensionDelegatesWithSameNames.kt") + public void testExtensionDelegatesWithSameNames() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt"); + } + + @TestMetadata("extensionPropertyAndExtensionGetValue.kt") + public void testExtensionPropertyAndExtensionGetValue() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/extensionPropertyAndExtensionGetValue.kt"); + } + + @TestMetadata("genericDelegate.kt") + public void testGenericDelegate() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/genericDelegate.kt"); + } + + @TestMetadata("genericDelegateUncheckedCast1.kt") + public void testGenericDelegateUncheckedCast1() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/genericDelegateUncheckedCast1.kt"); + } + + @TestMetadata("genericDelegateUncheckedCast2.kt") + public void testGenericDelegateUncheckedCast2() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/genericDelegateUncheckedCast2.kt"); + } + + @TestMetadata("genericSetValueViaSyntheticAccessor.kt") + public void testGenericSetValueViaSyntheticAccessor() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/genericSetValueViaSyntheticAccessor.kt"); + } + + @TestMetadata("getAsExtensionFun.kt") + public void testGetAsExtensionFun() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/getAsExtensionFun.kt"); + } + + @TestMetadata("getAsExtensionFunInClass.kt") + public void testGetAsExtensionFunInClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/getAsExtensionFunInClass.kt"); + } + + @TestMetadata("getDelegateWithoutReflection.kt") + public void testGetDelegateWithoutReflection() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/getDelegateWithoutReflection.kt"); + } + + @TestMetadata("inClassVal.kt") + public void testInClassVal() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/inClassVal.kt"); + } + + @TestMetadata("inClassVar.kt") + public void testInClassVar() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/inClassVar.kt"); + } + + @TestMetadata("inTrait.kt") + public void testInTrait() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/inTrait.kt"); + } + + @TestMetadata("inferredPropertyType.kt") + public void testInferredPropertyType() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/inferredPropertyType.kt"); + } + + @TestMetadata("kt4138.kt") + public void testKt4138() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/kt4138.kt"); + } + + @TestMetadata("kt6722.kt") + public void testKt6722() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/kt6722.kt"); + } + + @TestMetadata("kt9712.kt") + public void testKt9712() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/kt9712.kt"); + } + + @TestMetadata("privateSetterKPropertyIsNotMutable.kt") + public void testPrivateSetterKPropertyIsNotMutable() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/privateSetterKPropertyIsNotMutable.kt"); + } + + @TestMetadata("privateVar.kt") + public void testPrivateVar() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/privateVar.kt"); + } + + @TestMetadata("propertyMetadataShouldBeCached.kt") + public void testPropertyMetadataShouldBeCached() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/propertyMetadataShouldBeCached.kt"); + } + + @TestMetadata("protectedVarWithPrivateSet.kt") + public void testProtectedVarWithPrivateSet() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/protectedVarWithPrivateSet.kt"); + } + + @TestMetadata("setAsExtensionFun.kt") + public void testSetAsExtensionFun() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/setAsExtensionFun.kt"); + } + + @TestMetadata("setAsExtensionFunInClass.kt") + public void testSetAsExtensionFunInClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/setAsExtensionFunInClass.kt"); + } + + @TestMetadata("stackOverflowOnCallFromGetValue.kt") + public void testStackOverflowOnCallFromGetValue() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/stackOverflowOnCallFromGetValue.kt"); + } + + @TestMetadata("topLevelVal.kt") + public void testTopLevelVal() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/topLevelVal.kt"); + } + + @TestMetadata("topLevelVar.kt") + public void testTopLevelVar() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/topLevelVar.kt"); + } + + @TestMetadata("twoPropByOneDelegete.kt") + public void testTwoPropByOneDelegete() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/twoPropByOneDelegete.kt"); + } + + @TestMetadata("useKPropertyLater.kt") + public void testUseKPropertyLater() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/useKPropertyLater.kt"); + } + + @TestMetadata("useReflectionOnKProperty.kt") + public void testUseReflectionOnKProperty() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/useReflectionOnKProperty.kt"); + } + + @TestMetadata("valInInnerClass.kt") + public void testValInInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/valInInnerClass.kt"); + } + + @TestMetadata("varInInnerClass.kt") + public void testVarInInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/varInInnerClass.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/delegatedProperty/local") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Local extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocal() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/delegatedProperty/local"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("capturedLocalVal.kt") + public void testCapturedLocalVal() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/capturedLocalVal.kt"); + } + + @TestMetadata("capturedLocalValNoInline.kt") + public void testCapturedLocalValNoInline() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/capturedLocalValNoInline.kt"); + } + + @TestMetadata("capturedLocalVar.kt") + public void testCapturedLocalVar() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/capturedLocalVar.kt"); + } + + @TestMetadata("capturedLocalVarNoInline.kt") + public void testCapturedLocalVarNoInline() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/capturedLocalVarNoInline.kt"); + } + + @TestMetadata("inlineGetValue.kt") + public void testInlineGetValue() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/inlineGetValue.kt"); + } + + @TestMetadata("inlineOperators.kt") + public void testInlineOperators() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/inlineOperators.kt"); + } + + @TestMetadata("kt12891.kt") + public void testKt12891() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/kt12891.kt"); + } + + @TestMetadata("kt13557.kt") + public void testKt13557() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/kt13557.kt"); + } + + @TestMetadata("kt16864.kt") + public void testKt16864() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/kt16864.kt"); + } + + @TestMetadata("kt19690.kt") + public void testKt19690() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/kt19690.kt"); + } + + @TestMetadata("localVal.kt") + public void testLocalVal() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/localVal.kt"); + } + + @TestMetadata("localValNoExplicitType.kt") + public void testLocalValNoExplicitType() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/localValNoExplicitType.kt"); + } + + @TestMetadata("localVar.kt") + public void testLocalVar() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/localVar.kt"); + } + + @TestMetadata("localVarNoExplicitType.kt") + public void testLocalVarNoExplicitType() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/local/localVarNoExplicitType.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/delegatedProperty/provideDelegate") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ProvideDelegate extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInProvideDelegate() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/delegatedProperty/provideDelegate"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("differentReceivers.kt") + public void testDifferentReceivers() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/differentReceivers.kt"); + } + + @TestMetadata("evaluationOrder.kt") + public void testEvaluationOrder() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/evaluationOrder.kt"); + } + + @TestMetadata("evaluationOrderVar.kt") + public void testEvaluationOrderVar() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/evaluationOrderVar.kt"); + } + + @TestMetadata("extensionDelegated.kt") + public void testExtensionDelegated() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/extensionDelegated.kt"); + } + + @TestMetadata("generic.kt") + public void testGeneric() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/generic.kt"); + } + + @TestMetadata("hostCheck.kt") + public void testHostCheck() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/hostCheck.kt"); + } + + @TestMetadata("inClass.kt") + public void testInClass() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/inClass.kt"); + } + + @TestMetadata("inlineProvideDelegate.kt") + public void testInlineProvideDelegate() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/inlineProvideDelegate.kt"); + } + + @TestMetadata("jvmStaticInObject.kt") + public void testJvmStaticInObject() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/jvmStaticInObject.kt"); + } + + @TestMetadata("kt15437.kt") + public void testKt15437() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/kt15437.kt"); + } + + @TestMetadata("kt16441.kt") + public void testKt16441() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/kt16441.kt"); + } + + @TestMetadata("kt18902.kt") + public void testKt18902() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/kt18902.kt"); + } + + @TestMetadata("local.kt") + public void testLocal() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/local.kt"); + } + + @TestMetadata("localCaptured.kt") + public void testLocalCaptured() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/localCaptured.kt"); + } + + @TestMetadata("localDifferentReceivers.kt") + public void testLocalDifferentReceivers() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/localDifferentReceivers.kt"); + } + + @TestMetadata("memberExtension.kt") + public void testMemberExtension() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/memberExtension.kt"); + } + + @TestMetadata("propertyMetadata.kt") + public void testPropertyMetadata() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/provideDelegate/propertyMetadata.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/delegation") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Delegation extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDelegation() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/delegation"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("delegationToVal.kt") + public void testDelegationToVal() throws Exception { + runTest("compiler/testData/codegen/box/delegation/delegationToVal.kt"); + } + + @TestMetadata("delegationWithPrivateConstructor.kt") + public void testDelegationWithPrivateConstructor() throws Exception { + runTest("compiler/testData/codegen/box/delegation/delegationWithPrivateConstructor.kt"); + } + + @TestMetadata("hiddenSuperOverrideIn1.0.kt") + public void testHiddenSuperOverrideIn1_0() throws Exception { + runTest("compiler/testData/codegen/box/delegation/hiddenSuperOverrideIn1.0.kt"); + } + + @TestMetadata("kt8154.kt") + public void testKt8154() throws Exception { + runTest("compiler/testData/codegen/box/delegation/kt8154.kt"); + } + + @TestMetadata("withDefaultParameters.kt") + public void testWithDefaultParameters() throws Exception { + runTest("compiler/testData/codegen/box/delegation/withDefaultParameters.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/destructuringDeclInLambdaParam") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DestructuringDeclInLambdaParam extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDestructuringDeclInLambdaParam() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/destructuringDeclInLambdaParam"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("extensionComponents.kt") + public void testExtensionComponents() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/extensionComponents.kt"); + } + + @TestMetadata("generic.kt") + public void testGeneric() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/generic.kt"); + } + + @TestMetadata("inline.kt") + public void testInline() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/inline.kt"); + } + + @TestMetadata("otherParameters.kt") + public void testOtherParameters() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/otherParameters.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/simple.kt"); + } + + @TestMetadata("stdlibUsages.kt") + public void testStdlibUsages() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/stdlibUsages.kt"); + } + + @TestMetadata("underscoreNames.kt") + public void testUnderscoreNames() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/underscoreNames.kt"); + } + + @TestMetadata("withIndexed.kt") + public void testWithIndexed() throws Exception { + runTest("compiler/testData/codegen/box/destructuringDeclInLambdaParam/withIndexed.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Diagnostics extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDiagnostics() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics/functions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Functions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics/functions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics/functions/inference") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Inference extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInference() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics/functions/inference"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt6176.kt") + public void testKt6176() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/inference/kt6176.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics/functions/invoke") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Invoke extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInvoke() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics/functions/invoke"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class OnObjects extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInOnObjects() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("invokeOnClassObject1.kt") + public void testInvokeOnClassObject1() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnClassObject1.kt"); + } + + @TestMetadata("invokeOnClassObject2.kt") + public void testInvokeOnClassObject2() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnClassObject2.kt"); + } + + @TestMetadata("invokeOnClassObjectOfNestedClass1.kt") + public void testInvokeOnClassObjectOfNestedClass1() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnClassObjectOfNestedClass1.kt"); + } + + @TestMetadata("invokeOnClassObjectOfNestedClass2.kt") + public void testInvokeOnClassObjectOfNestedClass2() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnClassObjectOfNestedClass2.kt"); + } + + @TestMetadata("invokeOnEnum1.kt") + public void testInvokeOnEnum1() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnEnum1.kt"); + } + + @TestMetadata("invokeOnEnum2.kt") + public void testInvokeOnEnum2() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnEnum2.kt"); + } + + @TestMetadata("invokeOnImportedEnum1.kt") + public void testInvokeOnImportedEnum1() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnImportedEnum1.kt"); + } + + @TestMetadata("invokeOnImportedEnum2.kt") + public void testInvokeOnImportedEnum2() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnImportedEnum2.kt"); + } + + @TestMetadata("invokeOnObject1.kt") + public void testInvokeOnObject1() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnObject1.kt"); + } + + @TestMetadata("invokeOnObject2.kt") + public void testInvokeOnObject2() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/invoke/onObjects/invokeOnObject2.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics/functions/tailRecursion") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TailRecursion extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTailRecursion() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics/functions/tailRecursion"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("defaultArgs.kt") + public void testDefaultArgs() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/defaultArgs.kt"); + } + + @TestMetadata("defaultArgsOverridden.kt") + public void testDefaultArgsOverridden() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/defaultArgsOverridden.kt"); + } + + @TestMetadata("extensionTailCall.kt") + public void testExtensionTailCall() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/extensionTailCall.kt"); + } + + @TestMetadata("functionWithNoTails.kt") + public void testFunctionWithNoTails() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/functionWithNoTails.kt"); + } + + @TestMetadata("functionWithNonTailRecursions.kt") + public void testFunctionWithNonTailRecursions() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/functionWithNonTailRecursions.kt"); + } + + @TestMetadata("functionWithoutAnnotation.kt") + public void testFunctionWithoutAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/functionWithoutAnnotation.kt"); + } + + @TestMetadata("infixCall.kt") + public void testInfixCall() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/infixCall.kt"); + } + + @TestMetadata("infixRecursiveCall.kt") + public void testInfixRecursiveCall() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/infixRecursiveCall.kt"); + } + + @TestMetadata("insideElvis.kt") + public void testInsideElvis() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/insideElvis.kt"); + } + + @TestMetadata("labeledThisReferences.kt") + public void testLabeledThisReferences() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/labeledThisReferences.kt"); + } + + @TestMetadata("loops.kt") + public void testLoops() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/loops.kt"); + } + + @TestMetadata("multilevelBlocks.kt") + public void testMultilevelBlocks() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/multilevelBlocks.kt"); + } + + @TestMetadata("realIteratorFoldl.kt") + public void testRealIteratorFoldl() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/realIteratorFoldl.kt"); + } + + @TestMetadata("realStringEscape.kt") + public void testRealStringEscape() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/realStringEscape.kt"); + } + + @TestMetadata("realStringRepeat.kt") + public void testRealStringRepeat() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/realStringRepeat.kt"); + } + + @TestMetadata("recursiveCallInLambda.kt") + public void testRecursiveCallInLambda() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/recursiveCallInLambda.kt"); + } + + @TestMetadata("recursiveCallInLocalFunction.kt") + public void testRecursiveCallInLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/recursiveCallInLocalFunction.kt"); + } + + @TestMetadata("recursiveInnerFunction.kt") + public void testRecursiveInnerFunction() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/recursiveInnerFunction.kt"); + } + + @TestMetadata("returnIf.kt") + public void testReturnIf() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/returnIf.kt"); + } + + @TestMetadata("returnInCatch.kt") + public void testReturnInCatch() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/returnInCatch.kt"); + } + + @TestMetadata("returnInFinally.kt") + public void testReturnInFinally() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/returnInFinally.kt"); + } + + @TestMetadata("returnInIfInFinally.kt") + public void testReturnInIfInFinally() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/returnInIfInFinally.kt"); + } + + @TestMetadata("returnInParentheses.kt") + public void testReturnInParentheses() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/returnInParentheses.kt"); + } + + @TestMetadata("returnInTry.kt") + public void testReturnInTry() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/returnInTry.kt"); + } + + @TestMetadata("simpleBlock.kt") + public void testSimpleBlock() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/simpleBlock.kt"); + } + + @TestMetadata("simpleReturn.kt") + public void testSimpleReturn() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/simpleReturn.kt"); + } + + @TestMetadata("simpleReturnWithElse.kt") + public void testSimpleReturnWithElse() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/simpleReturnWithElse.kt"); + } + + @TestMetadata("sum.kt") + public void testSum() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/sum.kt"); + } + + @TestMetadata("tailCallInBlockInParentheses.kt") + public void testTailCallInBlockInParentheses() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/tailCallInBlockInParentheses.kt"); + } + + @TestMetadata("tailCallInParentheses.kt") + public void testTailCallInParentheses() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/tailCallInParentheses.kt"); + } + + @TestMetadata("tailRecursionInFinally.kt") + public void testTailRecursionInFinally() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/tailRecursionInFinally.kt"); + } + + @TestMetadata("thisReferences.kt") + public void testThisReferences() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/thisReferences.kt"); + } + + @TestMetadata("unitBlocks.kt") + public void testUnitBlocks() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/unitBlocks.kt"); + } + + @TestMetadata("whenWithCondition.kt") + public void testWhenWithCondition() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/whenWithCondition.kt"); + } + + @TestMetadata("whenWithInRange.kt") + public void testWhenWithInRange() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/whenWithInRange.kt"); + } + + @TestMetadata("whenWithIs.kt") + public void testWhenWithIs() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/whenWithIs.kt"); + } + + @TestMetadata("whenWithoutCondition.kt") + public void testWhenWithoutCondition() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/functions/tailRecursion/whenWithoutCondition.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/diagnostics/vararg") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Vararg extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInVararg() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/diagnostics/vararg"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt4172.kt") + public void testKt4172() throws Exception { + runTest("compiler/testData/codegen/box/diagnostics/vararg/kt4172.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/elvis") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Elvis extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInElvis() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/elvis"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("genericNull.kt") + public void testGenericNull() throws Exception { + runTest("compiler/testData/codegen/box/elvis/genericNull.kt"); + } + + @TestMetadata("kt6694ExactAnnotationForElvis.kt") + public void testKt6694ExactAnnotationForElvis() throws Exception { + runTest("compiler/testData/codegen/box/elvis/kt6694ExactAnnotationForElvis.kt"); + } + + @TestMetadata("nullNullOk.kt") + public void testNullNullOk() throws Exception { + runTest("compiler/testData/codegen/box/elvis/nullNullOk.kt"); + } + + @TestMetadata("primitive.kt") + public void testPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/elvis/primitive.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/enum") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Enum extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractMethodInEnum.kt") + public void testAbstractMethodInEnum() throws Exception { + runTest("compiler/testData/codegen/box/enum/abstractMethodInEnum.kt"); + } + + @TestMetadata("abstractNestedClass.kt") + public void testAbstractNestedClass() throws Exception { + runTest("compiler/testData/codegen/box/enum/abstractNestedClass.kt"); + } + + public void testAllFilesPresentInEnum() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/enum"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("asReturnExpression.kt") + public void testAsReturnExpression() throws Exception { + runTest("compiler/testData/codegen/box/enum/asReturnExpression.kt"); + } + + @TestMetadata("classForEnumEntry.kt") + public void testClassForEnumEntry() throws Exception { + runTest("compiler/testData/codegen/box/enum/classForEnumEntry.kt"); + } + + @TestMetadata("companionObjectInEnum.kt") + public void testCompanionObjectInEnum() throws Exception { + runTest("compiler/testData/codegen/box/enum/companionObjectInEnum.kt"); + } + + @TestMetadata("deepInnerClassInEnumEntryClass.kt") + public void testDeepInnerClassInEnumEntryClass() throws Exception { + runTest("compiler/testData/codegen/box/enum/deepInnerClassInEnumEntryClass.kt"); + } + + @TestMetadata("deepInnerClassInEnumEntryClass2.kt") + public void testDeepInnerClassInEnumEntryClass2() throws Exception { + runTest("compiler/testData/codegen/box/enum/deepInnerClassInEnumEntryClass2.kt"); + } + + @TestMetadata("emptyConstructor.kt") + public void testEmptyConstructor() throws Exception { + runTest("compiler/testData/codegen/box/enum/emptyConstructor.kt"); + } + + @TestMetadata("emptyEnumValuesValueOf.kt") + public void testEmptyEnumValuesValueOf() throws Exception { + runTest("compiler/testData/codegen/box/enum/emptyEnumValuesValueOf.kt"); + } + + @TestMetadata("enumCompanionInit.kt") + public void testEnumCompanionInit() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumCompanionInit.kt"); + } + + @TestMetadata("enumEntryReferenceFromInnerClassConstructor1.kt") + public void testEnumEntryReferenceFromInnerClassConstructor1() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumEntryReferenceFromInnerClassConstructor1.kt"); + } + + @TestMetadata("enumEntryReferenceFromInnerClassConstructor2.kt") + public void testEnumEntryReferenceFromInnerClassConstructor2() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumEntryReferenceFromInnerClassConstructor2.kt"); + } + + @TestMetadata("enumEntryReferenceFromInnerClassConstructor3.kt") + public void testEnumEntryReferenceFromInnerClassConstructor3() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumEntryReferenceFromInnerClassConstructor3.kt"); + } + + @TestMetadata("enumInheritedFromTrait.kt") + public void testEnumInheritedFromTrait() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumInheritedFromTrait.kt"); + } + + @TestMetadata("enumShort.kt") + public void testEnumShort() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumShort.kt"); + } + + @TestMetadata("enumWithLambdaParameter.kt") + public void testEnumWithLambdaParameter() throws Exception { + runTest("compiler/testData/codegen/box/enum/enumWithLambdaParameter.kt"); + } + + @TestMetadata("inPackage.kt") + public void testInPackage() throws Exception { + runTest("compiler/testData/codegen/box/enum/inPackage.kt"); + } + + @TestMetadata("inclassobj.kt") + public void testInclassobj() throws Exception { + runTest("compiler/testData/codegen/box/enum/inclassobj.kt"); + } + + @TestMetadata("inner.kt") + public void testInner() throws Exception { + runTest("compiler/testData/codegen/box/enum/inner.kt"); + } + + @TestMetadata("innerClassInEnumEntryClass.kt") + public void testInnerClassInEnumEntryClass() throws Exception { + runTest("compiler/testData/codegen/box/enum/innerClassInEnumEntryClass.kt"); + } + + @TestMetadata("innerClassMethodInEnumEntryClass.kt") + public void testInnerClassMethodInEnumEntryClass() throws Exception { + runTest("compiler/testData/codegen/box/enum/innerClassMethodInEnumEntryClass.kt"); + } + + @TestMetadata("innerClassMethodInEnumEntryClass2.kt") + public void testInnerClassMethodInEnumEntryClass2() throws Exception { + runTest("compiler/testData/codegen/box/enum/innerClassMethodInEnumEntryClass2.kt"); + } + + @TestMetadata("innerWithExistingClassObject.kt") + public void testInnerWithExistingClassObject() throws Exception { + runTest("compiler/testData/codegen/box/enum/innerWithExistingClassObject.kt"); + } + + @TestMetadata("kt1119.kt") + public void testKt1119() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt1119.kt"); + } + + @TestMetadata("kt18731.kt") + public void testKt18731() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt18731.kt"); + } + + @TestMetadata("kt20651.kt") + public void testKt20651() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt20651.kt"); + } + + @TestMetadata("kt20651_inlineLambda.kt") + public void testKt20651_inlineLambda() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt20651_inlineLambda.kt"); + } + + @TestMetadata("kt20651a.kt") + public void testKt20651a() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt20651a.kt"); + } + + @TestMetadata("kt20651b.kt") + public void testKt20651b() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt20651b.kt"); + } + + @TestMetadata("kt2350.kt") + public void testKt2350() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt2350.kt"); + } + + @TestMetadata("kt7257.kt") + public void testKt7257() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257.kt"); + } + + @TestMetadata("kt7257_anonObjectInit.kt") + public void testKt7257_anonObjectInit() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_anonObjectInit.kt"); + } + + @TestMetadata("kt7257_anonObjectMethod.kt") + public void testKt7257_anonObjectMethod() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_anonObjectMethod.kt"); + } + + @TestMetadata("kt7257_boundReference1.kt") + public void testKt7257_boundReference1() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_boundReference1.kt"); + } + + @TestMetadata("kt7257_boundReference2.kt") + public void testKt7257_boundReference2() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_boundReference2.kt"); + } + + @TestMetadata("kt7257_boundReferenceWithImplicitReceiver.kt") + public void testKt7257_boundReferenceWithImplicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_boundReferenceWithImplicitReceiver.kt"); + } + + @TestMetadata("kt7257_explicitReceiver.kt") + public void testKt7257_explicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_explicitReceiver.kt"); + } + + @TestMetadata("kt7257_fullyQualifiedReceiver.kt") + public void testKt7257_fullyQualifiedReceiver() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_fullyQualifiedReceiver.kt"); + } + + @TestMetadata("kt7257_namedLocalFun.kt") + public void testKt7257_namedLocalFun() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_namedLocalFun.kt"); + } + + @TestMetadata("kt7257_notInline.kt") + public void testKt7257_notInline() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt7257_notInline.kt"); + } + + @TestMetadata("kt9711.kt") + public void testKt9711() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt9711.kt"); + } + + @TestMetadata("kt9711_2.kt") + public void testKt9711_2() throws Exception { + runTest("compiler/testData/codegen/box/enum/kt9711_2.kt"); + } + + @TestMetadata("manyDefaultParameters.kt") + public void testManyDefaultParameters() throws Exception { + runTest("compiler/testData/codegen/box/enum/manyDefaultParameters.kt"); + } + + @TestMetadata("modifierFlags.kt") + public void testModifierFlags() throws Exception { + runTest("compiler/testData/codegen/box/enum/modifierFlags.kt"); + } + + @TestMetadata("noClassForSimpleEnum.kt") + public void testNoClassForSimpleEnum() throws Exception { + runTest("compiler/testData/codegen/box/enum/noClassForSimpleEnum.kt"); + } + + @TestMetadata("objectInEnum.kt") + public void testObjectInEnum() throws Exception { + runTest("compiler/testData/codegen/box/enum/objectInEnum.kt"); + } + + @TestMetadata("ordinal.kt") + public void testOrdinal() throws Exception { + runTest("compiler/testData/codegen/box/enum/ordinal.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/enum/simple.kt"); + } + + @TestMetadata("sortEnumEntries.kt") + public void testSortEnumEntries() throws Exception { + runTest("compiler/testData/codegen/box/enum/sortEnumEntries.kt"); + } + + @TestMetadata("superCallInEnumLiteral.kt") + public void testSuperCallInEnumLiteral() throws Exception { + runTest("compiler/testData/codegen/box/enum/superCallInEnumLiteral.kt"); + } + + @TestMetadata("toString.kt") + public void testToString() throws Exception { + runTest("compiler/testData/codegen/box/enum/toString.kt"); + } + + @TestMetadata("valueof.kt") + public void testValueof() throws Exception { + runTest("compiler/testData/codegen/box/enum/valueof.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/enum/defaultCtor") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DefaultCtor extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDefaultCtor() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/enum/defaultCtor"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constructorWithDefaultArguments.kt") + public void testConstructorWithDefaultArguments() throws Exception { + runTest("compiler/testData/codegen/box/enum/defaultCtor/constructorWithDefaultArguments.kt"); + } + + @TestMetadata("constructorWithVararg.kt") + public void testConstructorWithVararg() throws Exception { + runTest("compiler/testData/codegen/box/enum/defaultCtor/constructorWithVararg.kt"); + } + + @TestMetadata("entryClassConstructorWithDefaultArguments.kt") + public void testEntryClassConstructorWithDefaultArguments() throws Exception { + runTest("compiler/testData/codegen/box/enum/defaultCtor/entryClassConstructorWithDefaultArguments.kt"); + } + + @TestMetadata("entryClassConstructorWithVarargs.kt") + public void testEntryClassConstructorWithVarargs() throws Exception { + runTest("compiler/testData/codegen/box/enum/defaultCtor/entryClassConstructorWithVarargs.kt"); + } + + @TestMetadata("secondaryConstructorWithDefaultArguments.kt") + public void testSecondaryConstructorWithDefaultArguments() throws Exception { + runTest("compiler/testData/codegen/box/enum/defaultCtor/secondaryConstructorWithDefaultArguments.kt"); + } + + @TestMetadata("secondaryConstructorWithVararg.kt") + public void testSecondaryConstructorWithVararg() throws Exception { + runTest("compiler/testData/codegen/box/enum/defaultCtor/secondaryConstructorWithVararg.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/evaluate") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Evaluate extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEvaluate() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/evaluate"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("char.kt") + public void testChar() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/char.kt"); + } + + @TestMetadata("divide.kt") + public void testDivide() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/divide.kt"); + } + + @TestMetadata("intrinsics.kt") + public void testIntrinsics() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/intrinsics.kt"); + } + + @TestMetadata("kt9443.kt") + public void testKt9443() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/kt9443.kt"); + } + + @TestMetadata("maxValue.kt") + public void testMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/maxValue.kt"); + } + + @TestMetadata("maxValueByte.kt") + public void testMaxValueByte() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/maxValueByte.kt"); + } + + @TestMetadata("maxValueInt.kt") + public void testMaxValueInt() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/maxValueInt.kt"); + } + + @TestMetadata("minus.kt") + public void testMinus() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/minus.kt"); + } + + @TestMetadata("mod.kt") + public void testMod() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/mod.kt"); + } + + @TestMetadata("multiply.kt") + public void testMultiply() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/multiply.kt"); + } + + @TestMetadata("parenthesized.kt") + public void testParenthesized() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/parenthesized.kt"); + } + + @TestMetadata("plus.kt") + public void testPlus() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/plus.kt"); + } + + @TestMetadata("simpleCallBinary.kt") + public void testSimpleCallBinary() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/simpleCallBinary.kt"); + } + + @TestMetadata("unaryMinus.kt") + public void testUnaryMinus() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/unaryMinus.kt"); + } + + @TestMetadata("unaryPlus.kt") + public void testUnaryPlus() throws Exception { + runTest("compiler/testData/codegen/box/evaluate/unaryPlus.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/exclExcl") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExclExcl extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExclExcl() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/exclExcl"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("genericNull.kt") + public void testGenericNull() throws Exception { + runTest("compiler/testData/codegen/box/exclExcl/genericNull.kt"); + } + + @TestMetadata("primitive.kt") + public void testPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/exclExcl/primitive.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/extensionFunctions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExtensionFunctions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExtensionFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/extensionFunctions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("executionOrder.kt") + public void testExecutionOrder() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/executionOrder.kt"); + } + + @TestMetadata("kt1061.kt") + public void testKt1061() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt1061.kt"); + } + + @TestMetadata("kt1249.kt") + public void testKt1249() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt1249.kt"); + } + + @TestMetadata("kt1290.kt") + public void testKt1290() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt1290.kt"); + } + + @TestMetadata("kt13312.kt") + public void testKt13312() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt13312.kt"); + } + + @TestMetadata("kt1776.kt") + public void testKt1776() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt1776.kt"); + } + + @TestMetadata("kt1953.kt") + public void testKt1953() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt1953.kt"); + } + + @TestMetadata("kt1953_class.kt") + public void testKt1953_class() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt1953_class.kt"); + } + + @TestMetadata("kt3285.kt") + public void testKt3285() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt3285.kt"); + } + + @TestMetadata("kt3298.kt") + public void testKt3298() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt3298.kt"); + } + + @TestMetadata("kt3646.kt") + public void testKt3646() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt3646.kt"); + } + + @TestMetadata("kt3969.kt") + public void testKt3969() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt3969.kt"); + } + + @TestMetadata("kt4228.kt") + public void testKt4228() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt4228.kt"); + } + + @TestMetadata("kt475.kt") + public void testKt475() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt475.kt"); + } + + @TestMetadata("kt5467.kt") + public void testKt5467() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt5467.kt"); + } + + @TestMetadata("kt606.kt") + public void testKt606() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt606.kt"); + } + + @TestMetadata("kt865.kt") + public void testKt865() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/kt865.kt"); + } + + @TestMetadata("nested2.kt") + public void testNested2() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/nested2.kt"); + } + + @TestMetadata("shared.kt") + public void testShared() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/shared.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/simple.kt"); + } + + @TestMetadata("thisMethodInObjectLiteral.kt") + public void testThisMethodInObjectLiteral() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/thisMethodInObjectLiteral.kt"); + } + + @TestMetadata("virtual.kt") + public void testVirtual() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/virtual.kt"); + } + + @TestMetadata("whenFail.kt") + public void testWhenFail() throws Exception { + runTest("compiler/testData/codegen/box/extensionFunctions/whenFail.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/extensionProperties") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExtensionProperties extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessorForPrivateSetter.kt") + public void testAccessorForPrivateSetter() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/accessorForPrivateSetter.kt"); + } + + public void testAllFilesPresentInExtensionProperties() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/extensionProperties"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("genericValForPrimitiveType.kt") + public void testGenericValForPrimitiveType() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/genericValForPrimitiveType.kt"); + } + + @TestMetadata("genericValMultipleUpperBounds.kt") + public void testGenericValMultipleUpperBounds() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/genericValMultipleUpperBounds.kt"); + } + + @TestMetadata("genericVarForPrimitiveType.kt") + public void testGenericVarForPrimitiveType() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/genericVarForPrimitiveType.kt"); + } + + @TestMetadata("inClass.kt") + public void testInClass() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/inClass.kt"); + } + + @TestMetadata("inClassLongTypeInReceiver.kt") + public void testInClassLongTypeInReceiver() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/inClassLongTypeInReceiver.kt"); + } + + @TestMetadata("inClassWithGetter.kt") + public void testInClassWithGetter() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/inClassWithGetter.kt"); + } + + @TestMetadata("inClassWithPrivateGetter.kt") + public void testInClassWithPrivateGetter() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/inClassWithPrivateGetter.kt"); + } + + @TestMetadata("inClassWithPrivateSetter.kt") + public void testInClassWithPrivateSetter() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/inClassWithPrivateSetter.kt"); + } + + @TestMetadata("inClassWithSetter.kt") + public void testInClassWithSetter() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/inClassWithSetter.kt"); + } + + @TestMetadata("kt9897.kt") + public void testKt9897() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/kt9897.kt"); + } + + @TestMetadata("kt9897_topLevel.kt") + public void testKt9897_topLevel() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/kt9897_topLevel.kt"); + } + + @TestMetadata("nonAbstractInInterface.kt") + public void testNonAbstractInInterface() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/nonAbstractInInterface.kt"); + } + + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/topLevel.kt"); + } + + @TestMetadata("topLevelLongTypeInReceiver.kt") + public void testTopLevelLongTypeInReceiver() throws Exception { + runTest("compiler/testData/codegen/box/extensionProperties/topLevelLongTypeInReceiver.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/external") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class External extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExternal() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/external"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("jvmStaticExternal.kt") + public void testJvmStaticExternal() throws Exception { + runTest("compiler/testData/codegen/box/external/jvmStaticExternal.kt"); + } + + @TestMetadata("jvmStaticExternalPrivate.kt") + public void testJvmStaticExternalPrivate() throws Exception { + runTest("compiler/testData/codegen/box/external/jvmStaticExternalPrivate.kt"); + } + + @TestMetadata("withDefaultArg.kt") + public void testWithDefaultArg() throws Exception { + runTest("compiler/testData/codegen/box/external/withDefaultArg.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/fakeOverride") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FakeOverride extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFakeOverride() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/fakeOverride"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("diamondFunction.kt") + public void testDiamondFunction() throws Exception { + runTest("compiler/testData/codegen/box/fakeOverride/diamondFunction.kt"); + } + + @TestMetadata("function.kt") + public void testFunction() throws Exception { + runTest("compiler/testData/codegen/box/fakeOverride/function.kt"); + } + + @TestMetadata("propertyGetter.kt") + public void testPropertyGetter() throws Exception { + runTest("compiler/testData/codegen/box/fakeOverride/propertyGetter.kt"); + } + + @TestMetadata("propertySetter.kt") + public void testPropertySetter() throws Exception { + runTest("compiler/testData/codegen/box/fakeOverride/propertySetter.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/fieldRename") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FieldRename extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFieldRename() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/fieldRename"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constructorAndClassObject.kt") + public void testConstructorAndClassObject() throws Exception { + runTest("compiler/testData/codegen/box/fieldRename/constructorAndClassObject.kt"); + } + + @TestMetadata("delegates.kt") + public void testDelegates() throws Exception { + runTest("compiler/testData/codegen/box/fieldRename/delegates.kt"); + } + + @TestMetadata("genericPropertyWithItself.kt") + public void testGenericPropertyWithItself() throws Exception { + runTest("compiler/testData/codegen/box/fieldRename/genericPropertyWithItself.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/finally") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Finally extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFinally() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/finally"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("finallyAndFinally.kt") + public void testFinallyAndFinally() throws Exception { + runTest("compiler/testData/codegen/box/finally/finallyAndFinally.kt"); + } + + @TestMetadata("kt3549.kt") + public void testKt3549() throws Exception { + runTest("compiler/testData/codegen/box/finally/kt3549.kt"); + } + + @TestMetadata("kt3706.kt") + public void testKt3706() throws Exception { + runTest("compiler/testData/codegen/box/finally/kt3706.kt"); + } + + @TestMetadata("kt3867.kt") + public void testKt3867() throws Exception { + runTest("compiler/testData/codegen/box/finally/kt3867.kt"); + } + + @TestMetadata("kt3874.kt") + public void testKt3874() throws Exception { + runTest("compiler/testData/codegen/box/finally/kt3874.kt"); + } + + @TestMetadata("kt3894.kt") + public void testKt3894() throws Exception { + runTest("compiler/testData/codegen/box/finally/kt3894.kt"); + } + + @TestMetadata("kt4134.kt") + public void testKt4134() throws Exception { + runTest("compiler/testData/codegen/box/finally/kt4134.kt"); + } + + @TestMetadata("loopAndFinally.kt") + public void testLoopAndFinally() throws Exception { + runTest("compiler/testData/codegen/box/finally/loopAndFinally.kt"); + } + + @TestMetadata("notChainCatch.kt") + public void testNotChainCatch() throws Exception { + runTest("compiler/testData/codegen/box/finally/notChainCatch.kt"); + } + + @TestMetadata("tryFinally.kt") + public void testTryFinally() throws Exception { + runTest("compiler/testData/codegen/box/finally/tryFinally.kt"); + } + + @TestMetadata("tryLoopTry.kt") + public void testTryLoopTry() throws Exception { + runTest("compiler/testData/codegen/box/finally/tryLoopTry.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/fullJdk") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FullJdk extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFullJdk() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/fullJdk"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/fullJdk/native") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Native extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNative() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/fullJdk/native"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("nativePropertyAccessors.kt") + public void testNativePropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/fullJdk/native/nativePropertyAccessors.kt"); + } + + @TestMetadata("simpleNative.kt") + public void testSimpleNative() throws Exception { + runTest("compiler/testData/codegen/box/fullJdk/native/simpleNative.kt"); + } + + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/codegen/box/fullJdk/native/topLevel.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/fullJdk/regressions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Regressions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInRegressions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/fullJdk/regressions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt15112.kt") + public void testKt15112() throws Exception { + runTest("compiler/testData/codegen/box/fullJdk/regressions/kt15112.kt"); + } + + @TestMetadata("kt1770.kt") + public void testKt1770() throws Exception { + runTest("compiler/testData/codegen/box/fullJdk/regressions/kt1770.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/functions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Functions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("coerceVoidToArray.kt") + public void testCoerceVoidToArray() throws Exception { + runTest("compiler/testData/codegen/box/functions/coerceVoidToArray.kt"); + } + + @TestMetadata("coerceVoidToObject.kt") + public void testCoerceVoidToObject() throws Exception { + runTest("compiler/testData/codegen/box/functions/coerceVoidToObject.kt"); + } + + @TestMetadata("dataLocalVariable.kt") + public void testDataLocalVariable() throws Exception { + runTest("compiler/testData/codegen/box/functions/dataLocalVariable.kt"); + } + + @TestMetadata("defaultargs.kt") + public void testDefaultargs() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs.kt"); + } + + @TestMetadata("defaultargs1.kt") + public void testDefaultargs1() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs1.kt"); + } + + @TestMetadata("defaultargs2.kt") + public void testDefaultargs2() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs2.kt"); + } + + @TestMetadata("defaultargs3.kt") + public void testDefaultargs3() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs3.kt"); + } + + @TestMetadata("defaultargs4.kt") + public void testDefaultargs4() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs4.kt"); + } + + @TestMetadata("defaultargs5.kt") + public void testDefaultargs5() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs5.kt"); + } + + @TestMetadata("defaultargs6.kt") + public void testDefaultargs6() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs6.kt"); + } + + @TestMetadata("defaultargs7.kt") + public void testDefaultargs7() throws Exception { + runTest("compiler/testData/codegen/box/functions/defaultargs7.kt"); + } + + @TestMetadata("ea33909.kt") + public void testEa33909() throws Exception { + runTest("compiler/testData/codegen/box/functions/ea33909.kt"); + } + + @TestMetadata("fakeDescriptorWithSeveralOverridenOne.kt") + public void testFakeDescriptorWithSeveralOverridenOne() throws Exception { + runTest("compiler/testData/codegen/box/functions/fakeDescriptorWithSeveralOverridenOne.kt"); + } + + @TestMetadata("functionNtoString.kt") + public void testFunctionNtoString() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionNtoString.kt"); + } + + @TestMetadata("functionNtoStringGeneric.kt") + public void testFunctionNtoStringGeneric() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionNtoStringGeneric.kt"); + } + + @TestMetadata("functionNtoStringNoReflect.kt") + public void testFunctionNtoStringNoReflect() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionNtoStringNoReflect.kt"); + } + + @TestMetadata("infixRecursiveCall.kt") + public void testInfixRecursiveCall() throws Exception { + runTest("compiler/testData/codegen/box/functions/infixRecursiveCall.kt"); + } + + @TestMetadata("kt1038.kt") + public void testKt1038() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt1038.kt"); + } + + @TestMetadata("kt1199.kt") + public void testKt1199() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt1199.kt"); + } + + @TestMetadata("kt1413.kt") + public void testKt1413() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt1413.kt"); + } + + @TestMetadata("kt1649_1.kt") + public void testKt1649_1() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt1649_1.kt"); + } + + @TestMetadata("kt1649_2.kt") + public void testKt1649_2() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt1649_2.kt"); + } + + @TestMetadata("kt1739.kt") + public void testKt1739() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt1739.kt"); + } + + @TestMetadata("kt2270.kt") + public void testKt2270() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2270.kt"); + } + + @TestMetadata("kt2271.kt") + public void testKt2271() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2271.kt"); + } + + @TestMetadata("kt2280.kt") + public void testKt2280() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2280.kt"); + } + + @TestMetadata("kt2481.kt") + public void testKt2481() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2481.kt"); + } + + @TestMetadata("kt2716.kt") + public void testKt2716() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2716.kt"); + } + + @TestMetadata("kt2739.kt") + public void testKt2739() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2739.kt"); + } + + @TestMetadata("kt2929.kt") + public void testKt2929() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt2929.kt"); + } + + @TestMetadata("kt3214.kt") + public void testKt3214() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt3214.kt"); + } + + @TestMetadata("kt3313.kt") + public void testKt3313() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt3313.kt"); + } + + @TestMetadata("kt3573.kt") + public void testKt3573() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt3573.kt"); + } + + @TestMetadata("kt3724.kt") + public void testKt3724() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt3724.kt"); + } + + @TestMetadata("kt395.kt") + public void testKt395() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt395.kt"); + } + + @TestMetadata("kt785.kt") + public void testKt785() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt785.kt"); + } + + @TestMetadata("kt873.kt") + public void testKt873() throws Exception { + runTest("compiler/testData/codegen/box/functions/kt873.kt"); + } + + @TestMetadata("localFunction.kt") + public void testLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunction.kt"); + } + + @TestMetadata("localReturnInsideFunctionExpression.kt") + public void testLocalReturnInsideFunctionExpression() throws Exception { + runTest("compiler/testData/codegen/box/functions/localReturnInsideFunctionExpression.kt"); + } + + @TestMetadata("nothisnoclosure.kt") + public void testNothisnoclosure() throws Exception { + runTest("compiler/testData/codegen/box/functions/nothisnoclosure.kt"); + } + + @TestMetadata("prefixRecursiveCall.kt") + public void testPrefixRecursiveCall() throws Exception { + runTest("compiler/testData/codegen/box/functions/prefixRecursiveCall.kt"); + } + + @TestMetadata("recursiveCompareTo.kt") + public void testRecursiveCompareTo() throws Exception { + runTest("compiler/testData/codegen/box/functions/recursiveCompareTo.kt"); + } + + @TestMetadata("recursiveIncrementCall.kt") + public void testRecursiveIncrementCall() throws Exception { + runTest("compiler/testData/codegen/box/functions/recursiveIncrementCall.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/functions/functionExpression") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FunctionExpression extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFunctionExpression() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions/functionExpression"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("functionExpression.kt") + public void testFunctionExpression() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionExpression/functionExpression.kt"); + } + + @TestMetadata("functionExpressionWithThisReference.kt") + public void testFunctionExpressionWithThisReference() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionExpression/functionExpressionWithThisReference.kt"); + } + + @TestMetadata("functionLiteralExpression.kt") + public void testFunctionLiteralExpression() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionExpression/functionLiteralExpression.kt"); + } + + @TestMetadata("underscoreParameters.kt") + public void testUnderscoreParameters() throws Exception { + runTest("compiler/testData/codegen/box/functions/functionExpression/underscoreParameters.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/functions/invoke") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Invoke extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInvoke() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions/invoke"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("castFunctionToExtension.kt") + public void testCastFunctionToExtension() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/castFunctionToExtension.kt"); + } + + @TestMetadata("extensionInvokeOnExpr.kt") + public void testExtensionInvokeOnExpr() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/extensionInvokeOnExpr.kt"); + } + + @TestMetadata("implicitInvokeInCompanionObjectWithFunctionalArgument.kt") + public void testImplicitInvokeInCompanionObjectWithFunctionalArgument() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/implicitInvokeInCompanionObjectWithFunctionalArgument.kt"); + } + + @TestMetadata("implicitInvokeWithFunctionLiteralArgument.kt") + public void testImplicitInvokeWithFunctionLiteralArgument() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/implicitInvokeWithFunctionLiteralArgument.kt"); + } + + @TestMetadata("invoke.kt") + public void testInvoke() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/invoke.kt"); + } + + @TestMetadata("invokeOnExprByConvention.kt") + public void testInvokeOnExprByConvention() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/invokeOnExprByConvention.kt"); + } + + @TestMetadata("invokeOnSyntheticProperty.kt") + public void testInvokeOnSyntheticProperty() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/invokeOnSyntheticProperty.kt"); + } + + @TestMetadata("kt3189.kt") + public void testKt3189() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3189.kt"); + } + + @TestMetadata("kt3190.kt") + public void testKt3190() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3190.kt"); + } + + @TestMetadata("kt3297.kt") + public void testKt3297() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3297.kt"); + } + + @TestMetadata("kt3450getAndInvoke.kt") + public void testKt3450getAndInvoke() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3450getAndInvoke.kt"); + } + + @TestMetadata("kt3631invokeOnString.kt") + public void testKt3631invokeOnString() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3631invokeOnString.kt"); + } + + @TestMetadata("kt3772.kt") + public void testKt3772() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3772.kt"); + } + + @TestMetadata("kt3821invokeOnThis.kt") + public void testKt3821invokeOnThis() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3821invokeOnThis.kt"); + } + + @TestMetadata("kt3822invokeOnThis.kt") + public void testKt3822invokeOnThis() throws Exception { + runTest("compiler/testData/codegen/box/functions/invoke/kt3822invokeOnThis.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/functions/localFunctions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LocalFunctions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocalFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/functions/localFunctions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callInlineLocalInLambda.kt") + public void testCallInlineLocalInLambda() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/callInlineLocalInLambda.kt"); + } + + @TestMetadata("definedWithinLambda.kt") + public void testDefinedWithinLambda() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/definedWithinLambda.kt"); + } + + @TestMetadata("definedWithinLambdaInnerUsage1.kt") + public void testDefinedWithinLambdaInnerUsage1() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/definedWithinLambdaInnerUsage1.kt"); + } + + @TestMetadata("definedWithinLambdaInnerUsage2.kt") + public void testDefinedWithinLambdaInnerUsage2() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/definedWithinLambdaInnerUsage2.kt"); + } + + @TestMetadata("kt2895.kt") + public void testKt2895() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt2895.kt"); + } + + @TestMetadata("kt3308.kt") + public void testKt3308() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt3308.kt"); + } + + @TestMetadata("kt3978.kt") + public void testKt3978() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt3978.kt"); + } + + @TestMetadata("kt4119.kt") + public void testKt4119() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4119.kt"); + } + + @TestMetadata("kt4119_2.kt") + public void testKt4119_2() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4119_2.kt"); + } + + @TestMetadata("kt4514.kt") + public void testKt4514() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4514.kt"); + } + + @TestMetadata("kt4777.kt") + public void testKt4777() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4777.kt"); + } + + @TestMetadata("kt4783.kt") + public void testKt4783() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4783.kt"); + } + + @TestMetadata("kt4784.kt") + public void testKt4784() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4784.kt"); + } + + @TestMetadata("kt4989.kt") + public void testKt4989() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/kt4989.kt"); + } + + @TestMetadata("localExtensionOnNullableParameter.kt") + public void testLocalExtensionOnNullableParameter() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/localExtensionOnNullableParameter.kt"); + } + + @TestMetadata("localFunctionInConstructor.kt") + public void testLocalFunctionInConstructor() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/localFunctionInConstructor.kt"); + } + + @TestMetadata("localFunctionVsLocalVariable.kt") + public void testLocalFunctionVsLocalVariable() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/localFunctionVsLocalVariable.kt"); + } + + @TestMetadata("overloadedLocalFunWithoutClosure.kt") + public void testOverloadedLocalFunWithoutClosure() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/overloadedLocalFunWithoutClosure.kt"); + } + + @TestMetadata("overloadedLocalFunction.kt") + public void testOverloadedLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/overloadedLocalFunction.kt"); + } + + @TestMetadata("overloadedLocalFunction1.kt") + public void testOverloadedLocalFunction1() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/overloadedLocalFunction1.kt"); + } + + @TestMetadata("overloadedLocalFunction2.kt") + public void testOverloadedLocalFunction2() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/overloadedLocalFunction2.kt"); + } + + @TestMetadata("overloadedLocalFunction3.kt") + public void testOverloadedLocalFunction3() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/overloadedLocalFunction3.kt"); + } + + @TestMetadata("parameterAsDefaultValue.kt") + public void testParameterAsDefaultValue() throws Exception { + runTest("compiler/testData/codegen/box/functions/localFunctions/parameterAsDefaultValue.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/hashPMap") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class HashPMap extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInHashPMap() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/hashPMap"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("empty.kt") + public void testEmpty() throws Exception { + runTest("compiler/testData/codegen/box/hashPMap/empty.kt"); + } + + @TestMetadata("manyNumbers.kt") + public void testManyNumbers() throws Exception { + runTest("compiler/testData/codegen/box/hashPMap/manyNumbers.kt"); + } + + @TestMetadata("rewriteWithDifferent.kt") + public void testRewriteWithDifferent() throws Exception { + runTest("compiler/testData/codegen/box/hashPMap/rewriteWithDifferent.kt"); + } + + @TestMetadata("rewriteWithEqual.kt") + public void testRewriteWithEqual() throws Exception { + runTest("compiler/testData/codegen/box/hashPMap/rewriteWithEqual.kt"); + } + + @TestMetadata("simplePlusGet.kt") + public void testSimplePlusGet() throws Exception { + runTest("compiler/testData/codegen/box/hashPMap/simplePlusGet.kt"); + } + + @TestMetadata("simplePlusMinus.kt") + public void testSimplePlusMinus() throws Exception { + runTest("compiler/testData/codegen/box/hashPMap/simplePlusMinus.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ieee754") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Ieee754 extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIeee754() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ieee754"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anyToReal.kt") + public void testAnyToReal() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/anyToReal.kt"); + } + + @TestMetadata("asComparableToDouble.kt") + public void testAsComparableToDouble() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/asComparableToDouble.kt"); + } + + @TestMetadata("asComparableToDouble_properIeeeComparisons.kt") + public void testAsComparableToDouble_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/asComparableToDouble_properIeeeComparisons.kt"); + } + + @TestMetadata("comparableToTWithT_properIeeeComparisons.kt") + public void testComparableToTWithT_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/comparableToTWithT_properIeeeComparisons.kt"); + } + + @TestMetadata("comparableTypeCast.kt") + public void testComparableTypeCast() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/comparableTypeCast.kt"); + } + + @TestMetadata("dataClass.kt") + public void testDataClass() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/dataClass.kt"); + } + + @TestMetadata("differentTypesComparison.kt") + public void testDifferentTypesComparison() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/differentTypesComparison.kt"); + } + + @TestMetadata("equalsDouble.kt") + public void testEqualsDouble() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsDouble.kt"); + } + + @TestMetadata("equalsDouble_properIeeeComparisons.kt") + public void testEqualsDouble_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsDouble_properIeeeComparisons.kt"); + } + + @TestMetadata("equalsFloat.kt") + public void testEqualsFloat() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsFloat.kt"); + } + + @TestMetadata("equalsFloat_properIeeeComparisons.kt") + public void testEqualsFloat_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsFloat_properIeeeComparisons.kt"); + } + + @TestMetadata("equalsNaN.kt") + public void testEqualsNaN() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsNaN.kt"); + } + + @TestMetadata("equalsNaN_properIeeeComparisons.kt") + public void testEqualsNaN_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsNaN_properIeeeComparisons.kt"); + } + + @TestMetadata("equalsNullableDouble.kt") + public void testEqualsNullableDouble() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsNullableDouble.kt"); + } + + @TestMetadata("equalsNullableDouble_properIeeeComparisons.kt") + public void testEqualsNullableDouble_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsNullableDouble_properIeeeComparisons.kt"); + } + + @TestMetadata("equalsNullableFloat.kt") + public void testEqualsNullableFloat() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsNullableFloat.kt"); + } + + @TestMetadata("equalsNullableFloat_properIeeeComparisons.kt") + public void testEqualsNullableFloat_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/equalsNullableFloat_properIeeeComparisons.kt"); + } + + @TestMetadata("explicitCompareCall.kt") + public void testExplicitCompareCall() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/explicitCompareCall.kt"); + } + + @TestMetadata("explicitEqualsCall.kt") + public void testExplicitEqualsCall() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/explicitEqualsCall.kt"); + } + + @TestMetadata("generic.kt") + public void testGeneric() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/generic.kt"); + } + + @TestMetadata("greaterDouble.kt") + public void testGreaterDouble() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/greaterDouble.kt"); + } + + @TestMetadata("greaterDouble_properIeeeComparisons.kt") + public void testGreaterDouble_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/greaterDouble_properIeeeComparisons.kt"); + } + + @TestMetadata("greaterFloat.kt") + public void testGreaterFloat() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/greaterFloat.kt"); + } + + @TestMetadata("greaterFloat_properIeeeComparisons.kt") + public void testGreaterFloat_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/greaterFloat_properIeeeComparisons.kt"); + } + + @TestMetadata("inline.kt") + public void testInline() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/inline.kt"); + } + + @TestMetadata("lessDouble.kt") + public void testLessDouble() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/lessDouble.kt"); + } + + @TestMetadata("lessDouble_properIeeeComparisons.kt") + public void testLessDouble_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/lessDouble_properIeeeComparisons.kt"); + } + + @TestMetadata("lessFloat.kt") + public void testLessFloat() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/lessFloat.kt"); + } + + @TestMetadata("lessFloat_properIeeeComparisons.kt") + public void testLessFloat_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/lessFloat_properIeeeComparisons.kt"); + } + + @TestMetadata("nullableAnyToReal.kt") + public void testNullableAnyToReal() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableAnyToReal.kt"); + } + + @TestMetadata("nullableDoubleEquals.kt") + public void testNullableDoubleEquals() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableDoubleEquals.kt"); + } + + @TestMetadata("nullableDoubleEquals10.kt") + public void testNullableDoubleEquals10() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableDoubleEquals10.kt"); + } + + @TestMetadata("nullableDoubleEqualsLV13.kt") + public void testNullableDoubleEqualsLV13() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableDoubleEqualsLV13.kt"); + } + + @TestMetadata("nullableDoubleNotEquals.kt") + public void testNullableDoubleNotEquals() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableDoubleNotEquals.kt"); + } + + @TestMetadata("nullableDoubleNotEquals10.kt") + public void testNullableDoubleNotEquals10() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableDoubleNotEquals10.kt"); + } + + @TestMetadata("nullableFloatEquals.kt") + public void testNullableFloatEquals() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableFloatEquals.kt"); + } + + @TestMetadata("nullableFloatEquals10.kt") + public void testNullableFloatEquals10() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableFloatEquals10.kt"); + } + + @TestMetadata("nullableFloatNotEquals.kt") + public void testNullableFloatNotEquals() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableFloatNotEquals.kt"); + } + + @TestMetadata("nullableFloatNotEquals10.kt") + public void testNullableFloatNotEquals10() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableFloatNotEquals10.kt"); + } + + @TestMetadata("nullableIntEquals.kt") + public void testNullableIntEquals() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/nullableIntEquals.kt"); + } + + @TestMetadata("safeCall.kt") + public void testSafeCall() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/safeCall.kt"); + } + + @TestMetadata("smartCastOnWhenSubjectAfterCheckInBranch_properIeeeComparisons.kt") + public void testSmartCastOnWhenSubjectAfterCheckInBranch_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/smartCastOnWhenSubjectAfterCheckInBranch_properIeeeComparisons.kt"); + } + + @TestMetadata("smartCastToDifferentTypes.kt") + public void testSmartCastToDifferentTypes() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/smartCastToDifferentTypes.kt"); + } + + @TestMetadata("smartCastToDifferentTypesWithNumericPromotion.kt") + public void testSmartCastToDifferentTypesWithNumericPromotion() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/smartCastToDifferentTypesWithNumericPromotion.kt"); + } + + @TestMetadata("smartCastToDifferentTypesWithNumericPromotion_properIeeeComparisons.kt") + public void testSmartCastToDifferentTypesWithNumericPromotion_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/smartCastToDifferentTypesWithNumericPromotion_properIeeeComparisons.kt"); + } + + @TestMetadata("smartCastToDifferentTypes_properIeeeComparisons.kt") + public void testSmartCastToDifferentTypes_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/smartCastToDifferentTypes_properIeeeComparisons.kt"); + } + + @TestMetadata("smartCastToDoubleAndComparableToDouble.kt") + public void testSmartCastToDoubleAndComparableToDouble() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/smartCastToDoubleAndComparableToDouble.kt"); + } + + @TestMetadata("when.kt") + public void testWhen() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/when.kt"); + } + + @TestMetadata("when10.kt") + public void testWhen10() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/when10.kt"); + } + + @TestMetadata("when10_properIeeeComparisons.kt") + public void testWhen10_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/when10_properIeeeComparisons.kt"); + } + + @TestMetadata("whenNoSubject.kt") + public void testWhenNoSubject() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/whenNoSubject.kt"); + } + + @TestMetadata("whenNoSubject_properIeeeComparisons.kt") + public void testWhenNoSubject_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/whenNoSubject_properIeeeComparisons.kt"); + } + + @TestMetadata("whenNullableSmartCast.kt") + public void testWhenNullableSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/whenNullableSmartCast.kt"); + } + + @TestMetadata("whenNullableSmartCast10.kt") + public void testWhenNullableSmartCast10() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/whenNullableSmartCast10.kt"); + } + + @TestMetadata("when_properIeeeComparisons.kt") + public void testWhen_properIeeeComparisons() throws Exception { + runTest("compiler/testData/codegen/box/ieee754/when_properIeeeComparisons.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/increment") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Increment extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIncrement() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/increment"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayElement.kt") + public void testArrayElement() throws Exception { + runTest("compiler/testData/codegen/box/increment/arrayElement.kt"); + } + + @TestMetadata("assignPlusOnSmartCast.kt") + public void testAssignPlusOnSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/assignPlusOnSmartCast.kt"); + } + + @TestMetadata("augmentedAssignmentWithComplexRhs.kt") + public void testAugmentedAssignmentWithComplexRhs() throws Exception { + runTest("compiler/testData/codegen/box/increment/augmentedAssignmentWithComplexRhs.kt"); + } + + @TestMetadata("classNaryGetSet.kt") + public void testClassNaryGetSet() throws Exception { + runTest("compiler/testData/codegen/box/increment/classNaryGetSet.kt"); + } + + @TestMetadata("classWithGetSet.kt") + public void testClassWithGetSet() throws Exception { + runTest("compiler/testData/codegen/box/increment/classWithGetSet.kt"); + } + + @TestMetadata("extOnLong.kt") + public void testExtOnLong() throws Exception { + runTest("compiler/testData/codegen/box/increment/extOnLong.kt"); + } + + @TestMetadata("genericClassWithGetSet.kt") + public void testGenericClassWithGetSet() throws Exception { + runTest("compiler/testData/codegen/box/increment/genericClassWithGetSet.kt"); + } + + @TestMetadata("memberExtOnLong.kt") + public void testMemberExtOnLong() throws Exception { + runTest("compiler/testData/codegen/box/increment/memberExtOnLong.kt"); + } + + @TestMetadata("mutableListElement.kt") + public void testMutableListElement() throws Exception { + runTest("compiler/testData/codegen/box/increment/mutableListElement.kt"); + } + + @TestMetadata("nullable.kt") + public void testNullable() throws Exception { + runTest("compiler/testData/codegen/box/increment/nullable.kt"); + } + + @TestMetadata("postfixIncrementDoubleSmartCast.kt") + public void testPostfixIncrementDoubleSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixIncrementDoubleSmartCast.kt"); + } + + @TestMetadata("postfixIncrementOnClass.kt") + public void testPostfixIncrementOnClass() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixIncrementOnClass.kt"); + } + + @TestMetadata("postfixIncrementOnClassSmartCast.kt") + public void testPostfixIncrementOnClassSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixIncrementOnClassSmartCast.kt"); + } + + @TestMetadata("postfixIncrementOnShortSmartCast.kt") + public void testPostfixIncrementOnShortSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixIncrementOnShortSmartCast.kt"); + } + + @TestMetadata("postfixIncrementOnSmartCast.kt") + public void testPostfixIncrementOnSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixIncrementOnSmartCast.kt"); + } + + @TestMetadata("postfixNullableClassIncrement.kt") + public void testPostfixNullableClassIncrement() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixNullableClassIncrement.kt"); + } + + @TestMetadata("postfixNullableIncrement.kt") + public void testPostfixNullableIncrement() throws Exception { + runTest("compiler/testData/codegen/box/increment/postfixNullableIncrement.kt"); + } + + @TestMetadata("prefixIncrementOnClass.kt") + public void testPrefixIncrementOnClass() throws Exception { + runTest("compiler/testData/codegen/box/increment/prefixIncrementOnClass.kt"); + } + + @TestMetadata("prefixIncrementOnClassSmartCast.kt") + public void testPrefixIncrementOnClassSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/prefixIncrementOnClassSmartCast.kt"); + } + + @TestMetadata("prefixIncrementOnSmartCast.kt") + public void testPrefixIncrementOnSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/increment/prefixIncrementOnSmartCast.kt"); + } + + @TestMetadata("prefixNullableClassIncrement.kt") + public void testPrefixNullableClassIncrement() throws Exception { + runTest("compiler/testData/codegen/box/increment/prefixNullableClassIncrement.kt"); + } + + @TestMetadata("prefixNullableIncrement.kt") + public void testPrefixNullableIncrement() throws Exception { + runTest("compiler/testData/codegen/box/increment/prefixNullableIncrement.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/inlineClasses") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class InlineClasses extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInlineClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/inlineClasses"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boxUnboxInlineClassesWithOperatorsGetSet.kt") + public void testBoxUnboxInlineClassesWithOperatorsGetSet() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/boxUnboxInlineClassesWithOperatorsGetSet.kt"); + } + + @TestMetadata("boxUnboxOfInlineClassForCapturedVars.kt") + public void testBoxUnboxOfInlineClassForCapturedVars() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/boxUnboxOfInlineClassForCapturedVars.kt"); + } + + @TestMetadata("callComputablePropertyInsideInlineClass.kt") + public void testCallComputablePropertyInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/callComputablePropertyInsideInlineClass.kt"); + } + + @TestMetadata("checkBoxUnboxOfArgumentsOnInlinedFunctions.kt") + public void testCheckBoxUnboxOfArgumentsOnInlinedFunctions() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkBoxUnboxOfArgumentsOnInlinedFunctions.kt"); + } + + @TestMetadata("checkBoxingAfterAssertionOperator.kt") + public void testCheckBoxingAfterAssertionOperator() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkBoxingAfterAssertionOperator.kt"); + } + + @TestMetadata("checkBoxingForNonLocalAndLabeledReturns.kt") + public void testCheckBoxingForNonLocalAndLabeledReturns() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkBoxingForNonLocalAndLabeledReturns.kt"); + } + + @TestMetadata("checkBoxingFromReturnTypeForInlineClasses.kt") + public void testCheckBoxingFromReturnTypeForInlineClasses() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkBoxingFromReturnTypeForInlineClasses.kt"); + } + + @TestMetadata("checkBoxingOnFunctionCalls.kt") + public void testCheckBoxingOnFunctionCalls() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkBoxingOnFunctionCalls.kt"); + } + + @TestMetadata("checkBoxingOnLocalVariableAssignments.kt") + public void testCheckBoxingOnLocalVariableAssignments() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkBoxingOnLocalVariableAssignments.kt"); + } + + @TestMetadata("checkCallingMembersInsideInlineClass.kt") + public void testCheckCallingMembersInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkCallingMembersInsideInlineClass.kt"); + } + + @TestMetadata("checkCastToInlineClass.kt") + public void testCheckCastToInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkCastToInlineClass.kt"); + } + + @TestMetadata("checkForInstanceOfInlineClass.kt") + public void testCheckForInstanceOfInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkForInstanceOfInlineClass.kt"); + } + + @TestMetadata("checkLambdaWithInlineClassesInFunctionalType.kt") + public void testCheckLambdaWithInlineClassesInFunctionalType() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkLambdaWithInlineClassesInFunctionalType.kt"); + } + + @TestMetadata("checkUnboxingResultFromTypeVariable.kt") + public void testCheckUnboxingResultFromTypeVariable() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/checkUnboxingResultFromTypeVariable.kt"); + } + + @TestMetadata("computablePropertyInsideInlineClass.kt") + public void testComputablePropertyInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/computablePropertyInsideInlineClass.kt"); + } + + @TestMetadata("createInlineClassInArgumentPosition.kt") + public void testCreateInlineClassInArgumentPosition() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/createInlineClassInArgumentPosition.kt"); + } + + @TestMetadata("elvisWithInlineClassAndNullConstant.kt") + public void testElvisWithInlineClassAndNullConstant() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/elvisWithInlineClassAndNullConstant.kt"); + } + + @TestMetadata("emptyConstructorForInlineClass.kt") + public void testEmptyConstructorForInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/emptyConstructorForInlineClass.kt"); + } + + @TestMetadata("inlineClassAsLastExpressionInInLambda.kt") + public void testInlineClassAsLastExpressionInInLambda() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/inlineClassAsLastExpressionInInLambda.kt"); + } + + @TestMetadata("inlineFunctionInsideInlineClass.kt") + public void testInlineFunctionInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/inlineFunctionInsideInlineClass.kt"); + } + + @TestMetadata("noAssertionsOnInlineClassBasedOnNullableType.kt") + public void testNoAssertionsOnInlineClassBasedOnNullableType() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/noAssertionsOnInlineClassBasedOnNullableType.kt"); + } + + @TestMetadata("passInlineClassAsVararg.kt") + public void testPassInlineClassAsVararg() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/passInlineClassAsVararg.kt"); + } + + @TestMetadata("passInlineClassWithSpreadOperatorToVarargs.kt") + public void testPassInlineClassWithSpreadOperatorToVarargs() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/passInlineClassWithSpreadOperatorToVarargs.kt"); + } + + @TestMetadata("referToPropertyInCompanionObjectOfInlineClass.kt") + public void testReferToPropertyInCompanionObjectOfInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/referToPropertyInCompanionObjectOfInlineClass.kt"); + } + + @TestMetadata("referToUnderlyingPropertyInsideInlineClass.kt") + public void testReferToUnderlyingPropertyInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/referToUnderlyingPropertyInsideInlineClass.kt"); + } + + @TestMetadata("referToUnderlyingPropertyOfInlineClass.kt") + public void testReferToUnderlyingPropertyOfInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/referToUnderlyingPropertyOfInlineClass.kt"); + } + + @TestMetadata("UIntArraySortExample.kt") + public void testUIntArraySortExample() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/UIntArraySortExample.kt"); + } + + @TestMetadata("useInlineClassesInsideElvisOperator.kt") + public void testUseInlineClassesInsideElvisOperator() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/useInlineClassesInsideElvisOperator.kt"); + } + + @TestMetadata("useInlineFunctionInsideInlineClass.kt") + public void testUseInlineFunctionInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/useInlineFunctionInsideInlineClass.kt"); + } + + @TestMetadata("useThisInsideInlineClass.kt") + public void testUseThisInsideInlineClass() throws Exception { + runTest("compiler/testData/codegen/box/inlineClasses/useThisInsideInlineClass.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/innerNested") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class InnerNested extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInnerNested() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/innerNested"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("createNestedClass.kt") + public void testCreateNestedClass() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/createNestedClass.kt"); + } + + @TestMetadata("createdNestedInOuterMember.kt") + public void testCreatedNestedInOuterMember() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/createdNestedInOuterMember.kt"); + } + + @TestMetadata("extensionFun.kt") + public void testExtensionFun() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/extensionFun.kt"); + } + + @TestMetadata("extensionToNested.kt") + public void testExtensionToNested() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/extensionToNested.kt"); + } + + @TestMetadata("importNestedClass.kt") + public void testImportNestedClass() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/importNestedClass.kt"); + } + + @TestMetadata("innerGeneric.kt") + public void testInnerGeneric() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/innerGeneric.kt"); + } + + @TestMetadata("innerLabeledThis.kt") + public void testInnerLabeledThis() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/innerLabeledThis.kt"); + } + + @TestMetadata("innerSimple.kt") + public void testInnerSimple() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/innerSimple.kt"); + } + + @TestMetadata("kt3132.kt") + public void testKt3132() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/kt3132.kt"); + } + + @TestMetadata("kt3927.kt") + public void testKt3927() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/kt3927.kt"); + } + + @TestMetadata("kt5363.kt") + public void testKt5363() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/kt5363.kt"); + } + + @TestMetadata("kt6804.kt") + public void testKt6804() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/kt6804.kt"); + } + + @TestMetadata("nestedClassInObject.kt") + public void testNestedClassInObject() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedClassInObject.kt"); + } + + @TestMetadata("nestedClassObject.kt") + public void testNestedClassObject() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedClassObject.kt"); + } + + @TestMetadata("nestedEnumConstant.kt") + public void testNestedEnumConstant() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedEnumConstant.kt"); + } + + @TestMetadata("nestedGeneric.kt") + public void testNestedGeneric() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedGeneric.kt"); + } + + @TestMetadata("nestedInPackage.kt") + public void testNestedInPackage() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedInPackage.kt"); + } + + @TestMetadata("nestedObjects.kt") + public void testNestedObjects() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedObjects.kt"); + } + + @TestMetadata("nestedSimple.kt") + public void testNestedSimple() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/nestedSimple.kt"); + } + + @TestMetadata("passingOuterRef.kt") + public void testPassingOuterRef() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/passingOuterRef.kt"); + } + + @TestMetadata("protectedNestedClass.kt") + public void testProtectedNestedClass() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/protectedNestedClass.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/innerNested/superConstructorCall") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SuperConstructorCall extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSuperConstructorCall() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/innerNested/superConstructorCall"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("deepInnerHierarchy.kt") + public void testDeepInnerHierarchy() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/deepInnerHierarchy.kt"); + } + + @TestMetadata("deepLocalHierarchy.kt") + public void testDeepLocalHierarchy() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/deepLocalHierarchy.kt"); + } + + @TestMetadata("innerExtendsInnerViaSecondaryConstuctor.kt") + public void testInnerExtendsInnerViaSecondaryConstuctor() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/innerExtendsInnerViaSecondaryConstuctor.kt"); + } + + @TestMetadata("innerExtendsInnerWithProperOuterCapture.kt") + public void testInnerExtendsInnerWithProperOuterCapture() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/innerExtendsInnerWithProperOuterCapture.kt"); + } + + @TestMetadata("kt11833_1.kt") + public void testKt11833_1() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/kt11833_1.kt"); + } + + @TestMetadata("kt11833_2.kt") + public void testKt11833_2() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/kt11833_2.kt"); + } + + @TestMetadata("localClassOuterDiffersFromInnerOuter.kt") + public void testLocalClassOuterDiffersFromInnerOuter() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/localClassOuterDiffersFromInnerOuter.kt"); + } + + @TestMetadata("localExtendsInner.kt") + public void testLocalExtendsInner() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/localExtendsInner.kt"); + } + + @TestMetadata("localExtendsLocalWithClosure.kt") + public void testLocalExtendsLocalWithClosure() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/localExtendsLocalWithClosure.kt"); + } + + @TestMetadata("localWithClosureExtendsLocalWithClosure.kt") + public void testLocalWithClosureExtendsLocalWithClosure() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/localWithClosureExtendsLocalWithClosure.kt"); + } + + @TestMetadata("objectExtendsClassDefaultArgument.kt") + public void testObjectExtendsClassDefaultArgument() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsClassDefaultArgument.kt"); + } + + @TestMetadata("objectExtendsClassVararg.kt") + public void testObjectExtendsClassVararg() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsClassVararg.kt"); + } + + @TestMetadata("objectExtendsInner.kt") + public void testObjectExtendsInner() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsInner.kt"); + } + + @TestMetadata("objectExtendsInnerDefaultArgument.kt") + public void testObjectExtendsInnerDefaultArgument() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsInnerDefaultArgument.kt"); + } + + @TestMetadata("objectExtendsInnerOfLocalVarargAndDefault.kt") + public void testObjectExtendsInnerOfLocalVarargAndDefault() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsInnerOfLocalVarargAndDefault.kt"); + } + + @TestMetadata("objectExtendsInnerOfLocalWithCapture.kt") + public void testObjectExtendsInnerOfLocalWithCapture() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsInnerOfLocalWithCapture.kt"); + } + + @TestMetadata("objectExtendsLocalCaptureInSuperCall.kt") + public void testObjectExtendsLocalCaptureInSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsLocalCaptureInSuperCall.kt"); + } + + @TestMetadata("objectExtendsLocalWithClosure.kt") + public void testObjectExtendsLocalWithClosure() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectExtendsLocalWithClosure.kt"); + } + + @TestMetadata("objectOuterDiffersFromInnerOuter.kt") + public void testObjectOuterDiffersFromInnerOuter() throws Exception { + runTest("compiler/testData/codegen/box/innerNested/superConstructorCall/objectOuterDiffersFromInnerOuter.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/instructions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Instructions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInstructions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/instructions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/instructions/swap") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Swap extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSwap() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/instructions/swap"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("swapRefToSharedVarInt.kt") + public void testSwapRefToSharedVarInt() throws Exception { + runTest("compiler/testData/codegen/box/instructions/swap/swapRefToSharedVarInt.kt"); + } + + @TestMetadata("swapRefToSharedVarLong.kt") + public void testSwapRefToSharedVarLong() throws Exception { + runTest("compiler/testData/codegen/box/instructions/swap/swapRefToSharedVarLong.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/intrinsics") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Intrinsics extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIntrinsics() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/intrinsics"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("charToInt.kt") + public void testCharToInt() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/charToInt.kt"); + } + + @TestMetadata("defaultObjectMapping.kt") + public void testDefaultObjectMapping() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/defaultObjectMapping.kt"); + } + + @TestMetadata("ea35953.kt") + public void testEa35953() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/ea35953.kt"); + } + + @TestMetadata("incWithLabel.kt") + public void testIncWithLabel() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/incWithLabel.kt"); + } + + @TestMetadata("javaObjectType.kt") + public void testJavaObjectType() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/javaObjectType.kt"); + } + + @TestMetadata("javaPrimitiveType.kt") + public void testJavaPrimitiveType() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/javaPrimitiveType.kt"); + } + + @TestMetadata("kt10131.kt") + public void testKt10131() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt10131.kt"); + } + + @TestMetadata("kt10131a.kt") + public void testKt10131a() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt10131a.kt"); + } + + @TestMetadata("kt12125.kt") + public void testKt12125() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt12125.kt"); + } + + @TestMetadata("kt12125_2.kt") + public void testKt12125_2() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt12125_2.kt"); + } + + @TestMetadata("kt12125_inc.kt") + public void testKt12125_inc() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt12125_inc.kt"); + } + + @TestMetadata("kt12125_inc_2.kt") + public void testKt12125_inc_2() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt12125_inc_2.kt"); + } + + @TestMetadata("kt5937.kt") + public void testKt5937() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt5937.kt"); + } + + @TestMetadata("kt8666.kt") + public void testKt8666() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/kt8666.kt"); + } + + @TestMetadata("longRangeWithExplicitDot.kt") + public void testLongRangeWithExplicitDot() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/longRangeWithExplicitDot.kt"); + } + + @TestMetadata("prefixIncDec.kt") + public void testPrefixIncDec() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/prefixIncDec.kt"); + } + + @TestMetadata("rangeFromCollection.kt") + public void testRangeFromCollection() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/rangeFromCollection.kt"); + } + + @TestMetadata("stringFromCollection.kt") + public void testStringFromCollection() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/stringFromCollection.kt"); + } + + @TestMetadata("throwable.kt") + public void testThrowable() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/throwable.kt"); + } + + @TestMetadata("throwableCallableReference.kt") + public void testThrowableCallableReference() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/throwableCallableReference.kt"); + } + + @TestMetadata("throwableParamOrder.kt") + public void testThrowableParamOrder() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/throwableParamOrder.kt"); + } + + @TestMetadata("tostring.kt") + public void testTostring() throws Exception { + runTest("compiler/testData/codegen/box/intrinsics/tostring.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/javaInterop") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JavaInterop extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJavaInterop() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/javaInterop"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("lambdaInstanceOf.kt") + public void testLambdaInstanceOf() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/lambdaInstanceOf.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/javaInterop/generics") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Generics extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInGenerics() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/javaInterop/generics"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("allWildcardsOnClass.kt") + public void testAllWildcardsOnClass() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/generics/allWildcardsOnClass.kt"); + } + + @TestMetadata("covariantOverrideWithDeclarationSiteProjection.kt") + public void testCovariantOverrideWithDeclarationSiteProjection() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/generics/covariantOverrideWithDeclarationSiteProjection.kt"); + } + + @TestMetadata("invariantArgumentsNoWildcard.kt") + public void testInvariantArgumentsNoWildcard() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/generics/invariantArgumentsNoWildcard.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/javaInterop/notNullAssertions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class NotNullAssertions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNotNullAssertions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/javaInterop/notNullAssertions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("extensionReceiverParameter.kt") + public void testExtensionReceiverParameter() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/notNullAssertions/extensionReceiverParameter.kt"); + } + + @TestMetadata("mapPut.kt") + public void testMapPut() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/notNullAssertions/mapPut.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/javaInterop/notNullAssertions/enhancedNullability") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class EnhancedNullability extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEnhancedNullability() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/javaInterop/notNullAssertions/enhancedNullability"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/javaInterop/objectMethods") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ObjectMethods extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInObjectMethods() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/javaInterop/objectMethods"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("cloneCallsConstructor.kt") + public void testCloneCallsConstructor() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/objectMethods/cloneCallsConstructor.kt"); + } + + @TestMetadata("cloneCallsSuper.kt") + public void testCloneCallsSuper() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/objectMethods/cloneCallsSuper.kt"); + } + + @TestMetadata("cloneCallsSuperAndModifies.kt") + public void testCloneCallsSuperAndModifies() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/objectMethods/cloneCallsSuperAndModifies.kt"); + } + + @TestMetadata("cloneableClassWithoutClone.kt") + public void testCloneableClassWithoutClone() throws Exception { + runTest("compiler/testData/codegen/box/javaInterop/objectMethods/cloneableClassWithoutClone.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/jdk") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Jdk extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJdk() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jdk"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayList.kt") + public void testArrayList() throws Exception { + runTest("compiler/testData/codegen/box/jdk/arrayList.kt"); + } + + @TestMetadata("hashMap.kt") + public void testHashMap() throws Exception { + runTest("compiler/testData/codegen/box/jdk/hashMap.kt"); + } + + @TestMetadata("iteratingOverHashMap.kt") + public void testIteratingOverHashMap() throws Exception { + runTest("compiler/testData/codegen/box/jdk/iteratingOverHashMap.kt"); + } + + @TestMetadata("kt1397.kt") + public void testKt1397() throws Exception { + runTest("compiler/testData/codegen/box/jdk/kt1397.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/jvmField") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JvmField extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvmField() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jvmField"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("captureClassFields.kt") + public void testCaptureClassFields() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/captureClassFields.kt"); + } + + @TestMetadata("capturePackageFields.kt") + public void testCapturePackageFields() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/capturePackageFields.kt"); + } + + @TestMetadata("checkNoAccessors.kt") + public void testCheckNoAccessors() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/checkNoAccessors.kt"); + } + + @TestMetadata("classFieldReference.kt") + public void testClassFieldReference() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/classFieldReference.kt"); + } + + @TestMetadata("classFieldReflection.kt") + public void testClassFieldReflection() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/classFieldReflection.kt"); + } + + @TestMetadata("constructorProperty.kt") + public void testConstructorProperty() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/constructorProperty.kt"); + } + + @TestMetadata("publicField.kt") + public void testPublicField() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/publicField.kt"); + } + + @TestMetadata("simpleMemberProperty.kt") + public void testSimpleMemberProperty() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/simpleMemberProperty.kt"); + } + + @TestMetadata("superCall.kt") + public void testSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/superCall.kt"); + } + + @TestMetadata("superCall2.kt") + public void testSuperCall2() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/superCall2.kt"); + } + + @TestMetadata("topLevelFieldReference.kt") + public void testTopLevelFieldReference() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/topLevelFieldReference.kt"); + } + + @TestMetadata("topLevelFieldReflection.kt") + public void testTopLevelFieldReflection() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/topLevelFieldReflection.kt"); + } + + @TestMetadata("visibility.kt") + public void testVisibility() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/visibility.kt"); + } + + @TestMetadata("writeFieldReference.kt") + public void testWriteFieldReference() throws Exception { + runTest("compiler/testData/codegen/box/jvmField/writeFieldReference.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/jvmName") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JvmName extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvmName() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jvmName"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callableReference.kt") + public void testCallableReference() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/callableReference.kt"); + } + + @TestMetadata("clashingErasure.kt") + public void testClashingErasure() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/clashingErasure.kt"); + } + + @TestMetadata("classMembers.kt") + public void testClassMembers() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/classMembers.kt"); + } + + @TestMetadata("fakeJvmNameInJava.kt") + public void testFakeJvmNameInJava() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/fakeJvmNameInJava.kt"); + } + + @TestMetadata("functionName.kt") + public void testFunctionName() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/functionName.kt"); + } + + @TestMetadata("multifileClass.kt") + public void testMultifileClass() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/multifileClass.kt"); + } + + @TestMetadata("multifileClassWithLocalClass.kt") + public void testMultifileClassWithLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/multifileClassWithLocalClass.kt"); + } + + @TestMetadata("multifileClassWithLocalGeneric.kt") + public void testMultifileClassWithLocalGeneric() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/multifileClassWithLocalGeneric.kt"); + } + + @TestMetadata("propertyAccessorsUseSite.kt") + public void testPropertyAccessorsUseSite() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/propertyAccessorsUseSite.kt"); + } + + @TestMetadata("propertyName.kt") + public void testPropertyName() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/propertyName.kt"); + } + + @TestMetadata("renamedFileClass.kt") + public void testRenamedFileClass() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/renamedFileClass.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/jvmName/fileFacades") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FileFacades extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFileFacades() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jvmName/fileFacades"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("differentFiles.kt") + public void testDifferentFiles() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/fileFacades/differentFiles.kt"); + } + + @TestMetadata("javaAnnotationOnFileFacade.kt") + public void testJavaAnnotationOnFileFacade() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/fileFacades/javaAnnotationOnFileFacade.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/jvmName/fileFacades/simple.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/jvmOverloads") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JvmOverloads extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvmOverloads() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jvmOverloads"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("companionObject.kt") + public void testCompanionObject() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/companionObject.kt"); + } + + @TestMetadata("defaultsNotAtEnd.kt") + public void testDefaultsNotAtEnd() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/defaultsNotAtEnd.kt"); + } + + @TestMetadata("doubleParameters.kt") + public void testDoubleParameters() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/doubleParameters.kt"); + } + + @TestMetadata("extensionMethod.kt") + public void testExtensionMethod() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/extensionMethod.kt"); + } + + @TestMetadata("generics.kt") + public void testGenerics() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/generics.kt"); + } + + @TestMetadata("innerClass.kt") + public void testInnerClass() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/innerClass.kt"); + } + + @TestMetadata("multipleDefaultParameters.kt") + public void testMultipleDefaultParameters() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/multipleDefaultParameters.kt"); + } + + @TestMetadata("nonDefaultParameter.kt") + public void testNonDefaultParameter() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/nonDefaultParameter.kt"); + } + + @TestMetadata("primaryConstructor.kt") + public void testPrimaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/primaryConstructor.kt"); + } + + @TestMetadata("privateClass.kt") + public void testPrivateClass() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/privateClass.kt"); + } + + @TestMetadata("secondaryConstructor.kt") + public void testSecondaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/secondaryConstructor.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/simple.kt"); + } + + @TestMetadata("simpleJavaCall.kt") + public void testSimpleJavaCall() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/simpleJavaCall.kt"); + } + + @TestMetadata("varargs.kt") + public void testVarargs() throws Exception { + runTest("compiler/testData/codegen/box/jvmOverloads/varargs.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/jvmPackageName") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JvmPackageName extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvmPackageName() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jvmPackageName"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + + @TestMetadata("compiler/testData/codegen/box/jvmStatic") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JvmStatic extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvmStatic() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/jvmStatic"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotations.kt") + public void testAnnotations() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/annotations.kt"); + } + + @TestMetadata("closure.kt") + public void testClosure() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/closure.kt"); + } + + @TestMetadata("companionObject.kt") + public void testCompanionObject() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/companionObject.kt"); + } + + @TestMetadata("convention.kt") + public void testConvention() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/convention.kt"); + } + + @TestMetadata("default.kt") + public void testDefault() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/default.kt"); + } + + @TestMetadata("enumCompanion.kt") + public void testEnumCompanion() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/enumCompanion.kt"); + } + + @TestMetadata("explicitObject.kt") + public void testExplicitObject() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/explicitObject.kt"); + } + + @TestMetadata("funAccess.kt") + public void testFunAccess() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/funAccess.kt"); + } + + @TestMetadata("importStaticMemberFromObject.kt") + public void testImportStaticMemberFromObject() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/importStaticMemberFromObject.kt"); + } + + @TestMetadata("inline.kt") + public void testInline() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/inline.kt"); + } + + @TestMetadata("inlinePropertyAccessors.kt") + public void testInlinePropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/inlinePropertyAccessors.kt"); + } + + @TestMetadata("kt9897_static.kt") + public void testKt9897_static() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/kt9897_static.kt"); + } + + @TestMetadata("object.kt") + public void testObject() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/object.kt"); + } + + @TestMetadata("postfixInc.kt") + public void testPostfixInc() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/postfixInc.kt"); + } + + @TestMetadata("prefixInc.kt") + public void testPrefixInc() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/prefixInc.kt"); + } + + @TestMetadata("privateMethod.kt") + public void testPrivateMethod() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/privateMethod.kt"); + } + + @TestMetadata("privateSetter.kt") + public void testPrivateSetter() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/privateSetter.kt"); + } + + @TestMetadata("propertyAccess.kt") + public void testPropertyAccess() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/propertyAccess.kt"); + } + + @TestMetadata("propertyAccessorsCompanion.kt") + public void testPropertyAccessorsCompanion() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/propertyAccessorsCompanion.kt"); + } + + @TestMetadata("propertyAccessorsObject.kt") + public void testPropertyAccessorsObject() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/propertyAccessorsObject.kt"); + } + + @TestMetadata("propertyAsDefault.kt") + public void testPropertyAsDefault() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/propertyAsDefault.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/simple.kt"); + } + + @TestMetadata("syntheticAccessor.kt") + public void testSyntheticAccessor() throws Exception { + runTest("compiler/testData/codegen/box/jvmStatic/syntheticAccessor.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/labels") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Labels extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLabels() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/labels"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("controlLabelClashesWithFuncitonName.kt") + public void testControlLabelClashesWithFuncitonName() throws Exception { + runTest("compiler/testData/codegen/box/labels/controlLabelClashesWithFuncitonName.kt"); + } + + @TestMetadata("infixCallLabelling.kt") + public void testInfixCallLabelling() throws Exception { + runTest("compiler/testData/codegen/box/labels/infixCallLabelling.kt"); + } + + @TestMetadata("labeledDeclarations.kt") + public void testLabeledDeclarations() throws Exception { + runTest("compiler/testData/codegen/box/labels/labeledDeclarations.kt"); + } + + @TestMetadata("propertyAccessor.kt") + public void testPropertyAccessor() throws Exception { + runTest("compiler/testData/codegen/box/labels/propertyAccessor.kt"); + } + + @TestMetadata("propertyAccessorFunctionLiteral.kt") + public void testPropertyAccessorFunctionLiteral() throws Exception { + runTest("compiler/testData/codegen/box/labels/propertyAccessorFunctionLiteral.kt"); + } + + @TestMetadata("propertyAccessorInnerExtensionFun.kt") + public void testPropertyAccessorInnerExtensionFun() throws Exception { + runTest("compiler/testData/codegen/box/labels/propertyAccessorInnerExtensionFun.kt"); + } + + @TestMetadata("propertyAccessorObject.kt") + public void testPropertyAccessorObject() throws Exception { + runTest("compiler/testData/codegen/box/labels/propertyAccessorObject.kt"); + } + + @TestMetadata("propertyInClassAccessor.kt") + public void testPropertyInClassAccessor() throws Exception { + runTest("compiler/testData/codegen/box/labels/propertyInClassAccessor.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/lazyCodegen") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LazyCodegen extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLazyCodegen() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/lazyCodegen"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("exceptionInFieldInitializer.kt") + public void testExceptionInFieldInitializer() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/exceptionInFieldInitializer.kt"); + } + + @TestMetadata("ifElse.kt") + public void testIfElse() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/ifElse.kt"); + } + + @TestMetadata("increment.kt") + public void testIncrement() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/increment.kt"); + } + + @TestMetadata("safeAssign.kt") + public void testSafeAssign() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/safeAssign.kt"); + } + + @TestMetadata("safeAssignComplex.kt") + public void testSafeAssignComplex() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/safeAssignComplex.kt"); + } + + @TestMetadata("safeCallAndArray.kt") + public void testSafeCallAndArray() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/safeCallAndArray.kt"); + } + + @TestMetadata("toString.kt") + public void testToString() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/toString.kt"); + } + + @TestMetadata("tryCatchExpression.kt") + public void testTryCatchExpression() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/tryCatchExpression.kt"); + } + + @TestMetadata("when.kt") + public void testWhen() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/when.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/lazyCodegen/optimizations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Optimizations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInOptimizations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/lazyCodegen/optimizations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("negateConstantCompare.kt") + public void testNegateConstantCompare() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateConstantCompare.kt"); + } + + @TestMetadata("negateFalse.kt") + public void testNegateFalse() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateFalse.kt"); + } + + @TestMetadata("negateFalseVar.kt") + public void testNegateFalseVar() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateFalseVar.kt"); + } + + @TestMetadata("negateFalseVarChain.kt") + public void testNegateFalseVarChain() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateFalseVarChain.kt"); + } + + @TestMetadata("negateObjectComp.kt") + public void testNegateObjectComp() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateObjectComp.kt"); + } + + @TestMetadata("negateObjectComp2.kt") + public void testNegateObjectComp2() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateObjectComp2.kt"); + } + + @TestMetadata("negateTrue.kt") + public void testNegateTrue() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateTrue.kt"); + } + + @TestMetadata("negateTrueVar.kt") + public void testNegateTrueVar() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/negateTrueVar.kt"); + } + + @TestMetadata("noOptimization.kt") + public void testNoOptimization() throws Exception { + runTest("compiler/testData/codegen/box/lazyCodegen/optimizations/noOptimization.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/localClasses") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LocalClasses extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocalClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/localClasses"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anonymousObjectInInitializer.kt") + public void testAnonymousObjectInInitializer() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/anonymousObjectInInitializer.kt"); + } + + @TestMetadata("anonymousObjectInParameterInitializer.kt") + public void testAnonymousObjectInParameterInitializer() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/anonymousObjectInParameterInitializer.kt"); + } + + @TestMetadata("closureOfInnerLocalClass.kt") + public void testClosureOfInnerLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/closureOfInnerLocalClass.kt"); + } + + @TestMetadata("closureOfLambdaInLocalClass.kt") + public void testClosureOfLambdaInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/closureOfLambdaInLocalClass.kt"); + } + + @TestMetadata("closureWithSelfInstantiation.kt") + public void testClosureWithSelfInstantiation() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/closureWithSelfInstantiation.kt"); + } + + @TestMetadata("inExtensionFunction.kt") + public void testInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/inExtensionFunction.kt"); + } + + @TestMetadata("inExtensionProperty.kt") + public void testInExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/inExtensionProperty.kt"); + } + + @TestMetadata("inLocalExtensionFunction.kt") + public void testInLocalExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/inLocalExtensionFunction.kt"); + } + + @TestMetadata("inLocalExtensionProperty.kt") + public void testInLocalExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/inLocalExtensionProperty.kt"); + } + + @TestMetadata("innerClassInLocalClass.kt") + public void testInnerClassInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/innerClassInLocalClass.kt"); + } + + @TestMetadata("innerOfLocalCaptureExtensionReceiver.kt") + public void testInnerOfLocalCaptureExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/innerOfLocalCaptureExtensionReceiver.kt"); + } + + @TestMetadata("kt2700.kt") + public void testKt2700() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/kt2700.kt"); + } + + @TestMetadata("kt2873.kt") + public void testKt2873() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/kt2873.kt"); + } + + @TestMetadata("kt3210.kt") + public void testKt3210() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/kt3210.kt"); + } + + @TestMetadata("kt3389.kt") + public void testKt3389() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/kt3389.kt"); + } + + @TestMetadata("kt3584.kt") + public void testKt3584() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/kt3584.kt"); + } + + @TestMetadata("kt4174.kt") + public void testKt4174() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/kt4174.kt"); + } + + @TestMetadata("localClass.kt") + public void testLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/localClass.kt"); + } + + @TestMetadata("localClassCaptureExtensionReceiver.kt") + public void testLocalClassCaptureExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/localClassCaptureExtensionReceiver.kt"); + } + + @TestMetadata("localClassInInitializer.kt") + public void testLocalClassInInitializer() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/localClassInInitializer.kt"); + } + + @TestMetadata("localClassInParameterInitializer.kt") + public void testLocalClassInParameterInitializer() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/localClassInParameterInitializer.kt"); + } + + @TestMetadata("localDataClass.kt") + public void testLocalDataClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/localDataClass.kt"); + } + + @TestMetadata("localExtendsInnerAndReferencesOuterMember.kt") + public void testLocalExtendsInnerAndReferencesOuterMember() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/localExtendsInnerAndReferencesOuterMember.kt"); + } + + @TestMetadata("nameWithWhitespace.kt") + public void testNameWithWhitespace() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/nameWithWhitespace.kt"); + } + + @TestMetadata("noclosure.kt") + public void testNoclosure() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/noclosure.kt"); + } + + @TestMetadata("object.kt") + public void testObject() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/object.kt"); + } + + @TestMetadata("ownClosureOfInnerLocalClass.kt") + public void testOwnClosureOfInnerLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/ownClosureOfInnerLocalClass.kt"); + } + + @TestMetadata("recaptureVarCapturedInLocalClass1.kt") + public void testRecaptureVarCapturedInLocalClass1() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/recaptureVarCapturedInLocalClass1.kt"); + } + + @TestMetadata("recaptureVarCapturedInLocalClass2.kt") + public void testRecaptureVarCapturedInLocalClass2() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/recaptureVarCapturedInLocalClass2.kt"); + } + + @TestMetadata("recaptureVarCapturedInLocalClass3.kt") + public void testRecaptureVarCapturedInLocalClass3() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/recaptureVarCapturedInLocalClass3.kt"); + } + + @TestMetadata("subclassingExtensionReceiverClass.kt") + public void testSubclassingExtensionReceiverClass() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/subclassingExtensionReceiverClass.kt"); + } + + @TestMetadata("withclosure.kt") + public void testWithclosure() throws Exception { + runTest("compiler/testData/codegen/box/localClasses/withclosure.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/mangling") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Mangling extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMangling() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/mangling"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("field.kt") + public void testField() throws Exception { + runTest("compiler/testData/codegen/box/mangling/field.kt"); + } + + @TestMetadata("fun.kt") + public void testFun() throws Exception { + runTest("compiler/testData/codegen/box/mangling/fun.kt"); + } + + @TestMetadata("internal.kt") + public void testInternal() throws Exception { + runTest("compiler/testData/codegen/box/mangling/internal.kt"); + } + + @TestMetadata("internalOverride.kt") + public void testInternalOverride() throws Exception { + runTest("compiler/testData/codegen/box/mangling/internalOverride.kt"); + } + + @TestMetadata("internalOverrideSuperCall.kt") + public void testInternalOverrideSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/mangling/internalOverrideSuperCall.kt"); + } + + @TestMetadata("noOverrideWithJava.kt") + public void testNoOverrideWithJava() throws Exception { + runTest("compiler/testData/codegen/box/mangling/noOverrideWithJava.kt"); + } + + @TestMetadata("publicOverride.kt") + public void testPublicOverride() throws Exception { + runTest("compiler/testData/codegen/box/mangling/publicOverride.kt"); + } + + @TestMetadata("publicOverrideSuperCall.kt") + public void testPublicOverrideSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/mangling/publicOverrideSuperCall.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MultiDecl extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMultiDecl() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("ComplexInitializer.kt") + public void testComplexInitializer() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/ComplexInitializer.kt"); + } + + @TestMetadata("component.kt") + public void testComponent() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/component.kt"); + } + + @TestMetadata("kt9828_hashMap.kt") + public void testKt9828_hashMap() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/kt9828_hashMap.kt"); + } + + @TestMetadata("returnInElvis.kt") + public void testReturnInElvis() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/returnInElvis.kt"); + } + + @TestMetadata("SimpleVals.kt") + public void testSimpleVals() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/SimpleVals.kt"); + } + + @TestMetadata("SimpleValsExtensions.kt") + public void testSimpleValsExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/SimpleValsExtensions.kt"); + } + + @TestMetadata("SimpleVarsExtensions.kt") + public void testSimpleVarsExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/SimpleVarsExtensions.kt"); + } + + @TestMetadata("UnderscoreNames.kt") + public void testUnderscoreNames() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/UnderscoreNames.kt"); + } + + @TestMetadata("ValCapturedInFunctionLiteral.kt") + public void testValCapturedInFunctionLiteral() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/ValCapturedInFunctionLiteral.kt"); + } + + @TestMetadata("ValCapturedInLocalFunction.kt") + public void testValCapturedInLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/ValCapturedInLocalFunction.kt"); + } + + @TestMetadata("ValCapturedInObjectLiteral.kt") + public void testValCapturedInObjectLiteral() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/ValCapturedInObjectLiteral.kt"); + } + + @TestMetadata("VarCapturedInFunctionLiteral.kt") + public void testVarCapturedInFunctionLiteral() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/VarCapturedInFunctionLiteral.kt"); + } + + @TestMetadata("VarCapturedInLocalFunction.kt") + public void testVarCapturedInLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/VarCapturedInLocalFunction.kt"); + } + + @TestMetadata("VarCapturedInObjectLiteral.kt") + public void testVarCapturedInObjectLiteral() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/VarCapturedInObjectLiteral.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forIterator") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForIterator extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForIterator() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forIterator"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclFor.kt") + public void testMultiDeclFor() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/MultiDeclFor.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + + @TestMetadata("MultiDeclForValCaptured.kt") + public void testMultiDeclForValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/MultiDeclForValCaptured.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forIterator/longIterator") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LongIterator extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLongIterator() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forIterator/longIterator"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/longIterator/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/longIterator/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/longIterator/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forIterator/longIterator/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForRange extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForRange() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclFor.kt") + public void testMultiDeclFor() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/MultiDeclFor.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + + @TestMetadata("MultiDeclForValCaptured.kt") + public void testMultiDeclForValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/MultiDeclForValCaptured.kt"); + } + + @TestMetadata("UnderscoreNames.kt") + public void testUnderscoreNames() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/UnderscoreNames.kt"); + } + + @TestMetadata("UnderscoreNamesDontCallComponent.kt") + public void testUnderscoreNamesDontCallComponent() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/UnderscoreNamesDontCallComponent.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExplicitRangeTo extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExplicitRangeTo() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclFor.kt") + public void testMultiDeclFor() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/MultiDeclFor.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + + @TestMetadata("MultiDeclForValCaptured.kt") + public void testMultiDeclForValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/MultiDeclForValCaptured.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/int") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Int extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInt() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/int"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/int/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/int/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/int/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/int/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/long") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Long extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLong() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/long"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/long/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/long/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/long/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeTo/long/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExplicitRangeToWithDot extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExplicitRangeToWithDot() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclFor.kt") + public void testMultiDeclFor() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/MultiDeclFor.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + + @TestMetadata("MultiDeclForValCaptured.kt") + public void testMultiDeclForValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/MultiDeclForValCaptured.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/int") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Int extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInt() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/int"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/int/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/int/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/int/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/int/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/long") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Long extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLong() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/long"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/long/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/long/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/long/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/explicitRangeToWithDot/long/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/int") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Int extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInInt() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/int"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/int/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/int/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/int/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/int/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/multiDecl/forRange/long") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Long extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLong() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiDecl/forRange/long"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("MultiDeclForComponentExtensions.kt") + public void testMultiDeclForComponentExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/long/MultiDeclForComponentExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentExtensionsValCaptured.kt") + public void testMultiDeclForComponentExtensionsValCaptured() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/long/MultiDeclForComponentExtensionsValCaptured.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensions.kt") + public void testMultiDeclForComponentMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/long/MultiDeclForComponentMemberExtensions.kt"); + } + + @TestMetadata("MultiDeclForComponentMemberExtensionsInExtensionFunction.kt") + public void testMultiDeclForComponentMemberExtensionsInExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiDecl/forRange/long/MultiDeclForComponentMemberExtensionsInExtensionFunction.kt"); + } + } + } + } + + @TestMetadata("compiler/testData/codegen/box/multifileClasses") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MultifileClasses extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMultifileClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multifileClasses"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/multifileClasses/optimized") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Optimized extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInOptimized() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multifileClasses/optimized"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/multiplatform") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Multiplatform extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMultiplatform() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiplatform"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/multiplatform/defaultArguments") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DefaultArguments extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDefaultArguments() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/multiplatform/defaultArguments"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constructor.kt") + public void testConstructor() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/constructor.kt"); + } + + @TestMetadata("delegatedExpectedInterface.kt") + public void testDelegatedExpectedInterface() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/delegatedExpectedInterface.kt"); + } + + @TestMetadata("function.kt") + public void testFunction() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/function.kt"); + } + + @TestMetadata("inheritedFromCommonClass.kt") + public void testInheritedFromCommonClass() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inheritedFromCommonClass.kt"); + } + + @TestMetadata("inheritedFromExpectedClass.kt") + public void testInheritedFromExpectedClass() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inheritedFromExpectedClass.kt"); + } + + @TestMetadata("inheritedFromExpectedInterface.kt") + public void testInheritedFromExpectedInterface() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inheritedFromExpectedInterface.kt"); + } + + @TestMetadata("inheritedFromExpectedMethod.kt") + public void testInheritedFromExpectedMethod() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inheritedFromExpectedMethod.kt"); + } + + @TestMetadata("inheritedInExpectedDeclarations.kt") + public void testInheritedInExpectedDeclarations() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inheritedInExpectedDeclarations.kt"); + } + + @TestMetadata("inheritedViaAnotherInterfaceIndirectly.kt") + public void testInheritedViaAnotherInterfaceIndirectly() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inheritedViaAnotherInterfaceIndirectly.kt"); + } + + @TestMetadata("inlineFunctionWithDefaultLambda.kt") + public void testInlineFunctionWithDefaultLambda() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/inlineFunctionWithDefaultLambda.kt"); + } + + @TestMetadata("kt23239.kt") + public void testKt23239() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/kt23239.kt"); + } + + @TestMetadata("superCall.kt") + public void testSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/multiplatform/defaultArguments/superCall.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/nonLocalReturns") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class NonLocalReturns extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNonLocalReturns() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/nonLocalReturns"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt9644let.kt") + public void testKt9644let() throws Exception { + runTest("compiler/testData/codegen/box/nonLocalReturns/kt9644let.kt"); + } + + @TestMetadata("localReturnInsideProperty.kt") + public void testLocalReturnInsideProperty() throws Exception { + runTest("compiler/testData/codegen/box/nonLocalReturns/localReturnInsideProperty.kt"); + } + + @TestMetadata("returnInsideTwoLambdas.kt") + public void testReturnInsideTwoLambdas() throws Exception { + runTest("compiler/testData/codegen/box/nonLocalReturns/returnInsideTwoLambdas.kt"); + } + + @TestMetadata("use.kt") + public void testUse() throws Exception { + runTest("compiler/testData/codegen/box/nonLocalReturns/use.kt"); + } + + @TestMetadata("useWithException.kt") + public void testUseWithException() throws Exception { + runTest("compiler/testData/codegen/box/nonLocalReturns/useWithException.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/nullCheckOptimization") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class NullCheckOptimization extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNullCheckOptimization() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/nullCheckOptimization"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("isNullable.kt") + public void testIsNullable() throws Exception { + runTest("compiler/testData/codegen/box/nullCheckOptimization/isNullable.kt"); + } + + @TestMetadata("kt22410.kt") + public void testKt22410() throws Exception { + runTest("compiler/testData/codegen/box/nullCheckOptimization/kt22410.kt"); + } + + @TestMetadata("kt7774.kt") + public void testKt7774() throws Exception { + runTest("compiler/testData/codegen/box/nullCheckOptimization/kt7774.kt"); + } + + @TestMetadata("trivialInstanceOf.kt") + public void testTrivialInstanceOf() throws Exception { + runTest("compiler/testData/codegen/box/nullCheckOptimization/trivialInstanceOf.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/objectIntrinsics") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ObjectIntrinsics extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInObjectIntrinsics() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/objectIntrinsics"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("objects.kt") + public void testObjects() throws Exception { + runTest("compiler/testData/codegen/box/objectIntrinsics/objects.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/objects") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Objects extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInObjects() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/objects"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anonymousObjectPropertyInitialization.kt") + public void testAnonymousObjectPropertyInitialization() throws Exception { + runTest("compiler/testData/codegen/box/objects/anonymousObjectPropertyInitialization.kt"); + } + + @TestMetadata("anonymousObjectReturnsFromTopLevelFun.kt") + public void testAnonymousObjectReturnsFromTopLevelFun() throws Exception { + runTest("compiler/testData/codegen/box/objects/anonymousObjectReturnsFromTopLevelFun.kt"); + } + + @TestMetadata("classCallsProtectedInheritedByCompanion.kt") + public void testClassCallsProtectedInheritedByCompanion() throws Exception { + runTest("compiler/testData/codegen/box/objects/classCallsProtectedInheritedByCompanion.kt"); + } + + @TestMetadata("classCompanion.kt") + public void testClassCompanion() throws Exception { + runTest("compiler/testData/codegen/box/objects/classCompanion.kt"); + } + + @TestMetadata("compoundAssignmentToArrayAccessToExtensionPropertyImportedFromObject.kt") + public void testCompoundAssignmentToArrayAccessToExtensionPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/compoundAssignmentToArrayAccessToExtensionPropertyImportedFromObject.kt"); + } + + @TestMetadata("compoundAssignmentToArrayAccessToPropertyImportedFromObject.kt") + public void testCompoundAssignmentToArrayAccessToPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/compoundAssignmentToArrayAccessToPropertyImportedFromObject.kt"); + } + + @TestMetadata("compoundAssignmentToExtensionPropertyImportedFromObject.kt") + public void testCompoundAssignmentToExtensionPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/compoundAssignmentToExtensionPropertyImportedFromObject.kt"); + } + + @TestMetadata("compoundAssignmentToObjectFromCall.kt") + public void testCompoundAssignmentToObjectFromCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/compoundAssignmentToObjectFromCall.kt"); + } + + @TestMetadata("compoundAssignmentToPropertyImportedFromObject.kt") + public void testCompoundAssignmentToPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/compoundAssignmentToPropertyImportedFromObject.kt"); + } + + @TestMetadata("compoundAssignmentToPropertyWithQualifier.kt") + public void testCompoundAssignmentToPropertyWithQualifier() throws Exception { + runTest("compiler/testData/codegen/box/objects/compoundAssignmentToPropertyWithQualifier.kt"); + } + + @TestMetadata("flist.kt") + public void testFlist() throws Exception { + runTest("compiler/testData/codegen/box/objects/flist.kt"); + } + + @TestMetadata("initializationOrder.kt") + public void testInitializationOrder() throws Exception { + runTest("compiler/testData/codegen/box/objects/initializationOrder.kt"); + } + + @TestMetadata("interfaceCompanion.kt") + public void testInterfaceCompanion() throws Exception { + runTest("compiler/testData/codegen/box/objects/interfaceCompanion.kt"); + } + + @TestMetadata("interfaceCompanionObjectReference.kt") + public void testInterfaceCompanionObjectReference() throws Exception { + runTest("compiler/testData/codegen/box/objects/interfaceCompanionObjectReference.kt"); + } + + @TestMetadata("kt1047.kt") + public void testKt1047() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt1047.kt"); + } + + @TestMetadata("kt11117.kt") + public void testKt11117() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt11117.kt"); + } + + @TestMetadata("kt1186.kt") + public void testKt1186() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt1186.kt"); + } + + @TestMetadata("kt1600.kt") + public void testKt1600() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt1600.kt"); + } + + @TestMetadata("kt1737.kt") + public void testKt1737() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt1737.kt"); + } + + @TestMetadata("kt18982.kt") + public void testKt18982() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt18982.kt"); + } + + @TestMetadata("kt2398.kt") + public void testKt2398() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt2398.kt"); + } + + @TestMetadata("kt2663.kt") + public void testKt2663() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt2663.kt"); + } + + @TestMetadata("kt2663_2.kt") + public void testKt2663_2() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt2663_2.kt"); + } + + @TestMetadata("kt2675.kt") + public void testKt2675() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt2675.kt"); + } + + @TestMetadata("kt2719.kt") + public void testKt2719() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt2719.kt"); + } + + @TestMetadata("kt2822.kt") + public void testKt2822() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt2822.kt"); + } + + @TestMetadata("kt3238.kt") + public void testKt3238() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt3238.kt"); + } + + @TestMetadata("kt3684.kt") + public void testKt3684() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt3684.kt"); + } + + @TestMetadata("kt4086.kt") + public void testKt4086() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt4086.kt"); + } + + @TestMetadata("kt535.kt") + public void testKt535() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt535.kt"); + } + + @TestMetadata("kt560.kt") + public void testKt560() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt560.kt"); + } + + @TestMetadata("kt694.kt") + public void testKt694() throws Exception { + runTest("compiler/testData/codegen/box/objects/kt694.kt"); + } + + @TestMetadata("localFunctionInObjectInitializer_kt4516.kt") + public void testLocalFunctionInObjectInitializer_kt4516() throws Exception { + runTest("compiler/testData/codegen/box/objects/localFunctionInObjectInitializer_kt4516.kt"); + } + + @TestMetadata("methodOnObject.kt") + public void testMethodOnObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/methodOnObject.kt"); + } + + @TestMetadata("nestedDerivedClassCallsProtectedFromCompanion.kt") + public void testNestedDerivedClassCallsProtectedFromCompanion() throws Exception { + runTest("compiler/testData/codegen/box/objects/nestedDerivedClassCallsProtectedFromCompanion.kt"); + } + + @TestMetadata("nestedObjectWithSuperclass.kt") + public void testNestedObjectWithSuperclass() throws Exception { + runTest("compiler/testData/codegen/box/objects/nestedObjectWithSuperclass.kt"); + } + + @TestMetadata("object.kt") + public void testObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/object.kt"); + } + + @TestMetadata("objectExtendsInnerAndReferencesOuterMember.kt") + public void testObjectExtendsInnerAndReferencesOuterMember() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectExtendsInnerAndReferencesOuterMember.kt"); + } + + @TestMetadata("objectInLocalAnonymousObject.kt") + public void testObjectInLocalAnonymousObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectInLocalAnonymousObject.kt"); + } + + @TestMetadata("objectInitialization_kt5523.kt") + public void testObjectInitialization_kt5523() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectInitialization_kt5523.kt"); + } + + @TestMetadata("objectLiteral.kt") + public void testObjectLiteral() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectLiteral.kt"); + } + + @TestMetadata("objectLiteralInClosure.kt") + public void testObjectLiteralInClosure() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectLiteralInClosure.kt"); + } + + @TestMetadata("objectVsClassInitialization_kt5291.kt") + public void testObjectVsClassInitialization_kt5291() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectVsClassInitialization_kt5291.kt"); + } + + @TestMetadata("objectWithSuperclass.kt") + public void testObjectWithSuperclass() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectWithSuperclass.kt"); + } + + @TestMetadata("objectWithSuperclassAndTrait.kt") + public void testObjectWithSuperclassAndTrait() throws Exception { + runTest("compiler/testData/codegen/box/objects/objectWithSuperclassAndTrait.kt"); + } + + @TestMetadata("privateExtensionFromInitializer_kt4543.kt") + public void testPrivateExtensionFromInitializer_kt4543() throws Exception { + runTest("compiler/testData/codegen/box/objects/privateExtensionFromInitializer_kt4543.kt"); + } + + @TestMetadata("privateFunctionFromClosureInInitializer_kt5582.kt") + public void testPrivateFunctionFromClosureInInitializer_kt5582() throws Exception { + runTest("compiler/testData/codegen/box/objects/privateFunctionFromClosureInInitializer_kt5582.kt"); + } + + @TestMetadata("receiverInConstructor.kt") + public void testReceiverInConstructor() throws Exception { + runTest("compiler/testData/codegen/box/objects/receiverInConstructor.kt"); + } + + @TestMetadata("safeAccess.kt") + public void testSafeAccess() throws Exception { + runTest("compiler/testData/codegen/box/objects/safeAccess.kt"); + } + + @TestMetadata("selfReferenceToCompanionObjectInAnonymousObjectInSuperConstructorCall.kt") + public void testSelfReferenceToCompanionObjectInAnonymousObjectInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToCompanionObjectInAnonymousObjectInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToCompanionObjectInInlineLambdaInConstructorBody.kt") + public void testSelfReferenceToCompanionObjectInInlineLambdaInConstructorBody() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToCompanionObjectInInlineLambdaInConstructorBody.kt"); + } + + @TestMetadata("selfReferenceToCompanionObjectInInlineLambdaInSuperConstructorCall.kt") + public void testSelfReferenceToCompanionObjectInInlineLambdaInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToCompanionObjectInInlineLambdaInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToCompanionObjectInLambdaInSuperConstructorCall.kt") + public void testSelfReferenceToCompanionObjectInLambdaInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToCompanionObjectInLambdaInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToInterfaceCompanionObjectInAnonymousObjectInSuperConstructorCall.kt") + public void testSelfReferenceToInterfaceCompanionObjectInAnonymousObjectInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToInterfaceCompanionObjectInAnonymousObjectInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToInterfaceCompanionObjectInInlineLambdaInConstructorBody.kt") + public void testSelfReferenceToInterfaceCompanionObjectInInlineLambdaInConstructorBody() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToInterfaceCompanionObjectInInlineLambdaInConstructorBody.kt"); + } + + @TestMetadata("selfReferenceToInterfaceCompanionObjectInInlineLambdaInSuperConstructorCall.kt") + public void testSelfReferenceToInterfaceCompanionObjectInInlineLambdaInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToInterfaceCompanionObjectInInlineLambdaInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToInterfaceCompanionObjectInLambdaInSuperConstructorCall.kt") + public void testSelfReferenceToInterfaceCompanionObjectInLambdaInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToInterfaceCompanionObjectInLambdaInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToObjectInAnonymousObjectInSuperConstructorCall.kt") + public void testSelfReferenceToObjectInAnonymousObjectInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToObjectInAnonymousObjectInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToObjectInInlineLambdaInConstructorBody.kt") + public void testSelfReferenceToObjectInInlineLambdaInConstructorBody() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToObjectInInlineLambdaInConstructorBody.kt"); + } + + @TestMetadata("selfReferenceToObjectInInlineLambdaInSuperConstructorCall.kt") + public void testSelfReferenceToObjectInInlineLambdaInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToObjectInInlineLambdaInSuperConstructorCall.kt"); + } + + @TestMetadata("selfReferenceToObjectInLambdaInSuperConstructorCall.kt") + public void testSelfReferenceToObjectInLambdaInSuperConstructorCall() throws Exception { + runTest("compiler/testData/codegen/box/objects/selfReferenceToObjectInLambdaInSuperConstructorCall.kt"); + } + + @TestMetadata("simpleObject.kt") + public void testSimpleObject() throws Exception { + runTest("compiler/testData/codegen/box/objects/simpleObject.kt"); + } + + @TestMetadata("thisInConstructor.kt") + public void testThisInConstructor() throws Exception { + runTest("compiler/testData/codegen/box/objects/thisInConstructor.kt"); + } + + @TestMetadata("useAnonymousObjectAsIterator.kt") + public void testUseAnonymousObjectAsIterator() throws Exception { + runTest("compiler/testData/codegen/box/objects/useAnonymousObjectAsIterator.kt"); + } + + @TestMetadata("useImportedMember.kt") + public void testUseImportedMember() throws Exception { + runTest("compiler/testData/codegen/box/objects/useImportedMember.kt"); + } + + @TestMetadata("useImportedMemberFromCompanion.kt") + public void testUseImportedMemberFromCompanion() throws Exception { + runTest("compiler/testData/codegen/box/objects/useImportedMemberFromCompanion.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/operatorConventions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class OperatorConventions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInOperatorConventions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/operatorConventions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotatedAssignment.kt") + public void testAnnotatedAssignment() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/annotatedAssignment.kt"); + } + + @TestMetadata("assignmentOperations.kt") + public void testAssignmentOperations() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/assignmentOperations.kt"); + } + + @TestMetadata("augmentedAssignmentInInitializer.kt") + public void testAugmentedAssignmentInInitializer() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/augmentedAssignmentInInitializer.kt"); + } + + @TestMetadata("augmentedAssignmentWithArrayLHS.kt") + public void testAugmentedAssignmentWithArrayLHS() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/augmentedAssignmentWithArrayLHS.kt"); + } + + @TestMetadata("incDecOnObject.kt") + public void testIncDecOnObject() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/incDecOnObject.kt"); + } + + @TestMetadata("infixFunctionOverBuiltinMember.kt") + public void testInfixFunctionOverBuiltinMember() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/infixFunctionOverBuiltinMember.kt"); + } + + @TestMetadata("kt14201.kt") + public void testKt14201() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/kt14201.kt"); + } + + @TestMetadata("kt14201_2.kt") + public void testKt14201_2() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/kt14201_2.kt"); + } + + @TestMetadata("kt20387.kt") + public void testKt20387() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/kt20387.kt"); + } + + @TestMetadata("kt4152.kt") + public void testKt4152() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/kt4152.kt"); + } + + @TestMetadata("kt4987.kt") + public void testKt4987() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/kt4987.kt"); + } + + @TestMetadata("nestedMaps.kt") + public void testNestedMaps() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/nestedMaps.kt"); + } + + @TestMetadata("operatorSetLambda.kt") + public void testOperatorSetLambda() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/operatorSetLambda.kt"); + } + + @TestMetadata("overloadedSet.kt") + public void testOverloadedSet() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/overloadedSet.kt"); + } + + @TestMetadata("plusExplicit.kt") + public void testPlusExplicit() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/plusExplicit.kt"); + } + + @TestMetadata("remAssignmentOperation.kt") + public void testRemAssignmentOperation() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/remAssignmentOperation.kt"); + } + + @TestMetadata("remOverModOperation.kt") + public void testRemOverModOperation() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/remOverModOperation.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/operatorConventions/compareTo") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CompareTo extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCompareTo() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/operatorConventions/compareTo"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boolean.kt") + public void testBoolean() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/boolean.kt"); + } + + @TestMetadata("comparable.kt") + public void testComparable() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/comparable.kt"); + } + + @TestMetadata("doubleInt.kt") + public void testDoubleInt() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/doubleInt.kt"); + } + + @TestMetadata("doubleLong.kt") + public void testDoubleLong() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/doubleLong.kt"); + } + + @TestMetadata("extensionArray.kt") + public void testExtensionArray() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/extensionArray.kt"); + } + + @TestMetadata("extensionObject.kt") + public void testExtensionObject() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/extensionObject.kt"); + } + + @TestMetadata("intDouble.kt") + public void testIntDouble() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/intDouble.kt"); + } + + @TestMetadata("intLong.kt") + public void testIntLong() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/intLong.kt"); + } + + @TestMetadata("longDouble.kt") + public void testLongDouble() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/longDouble.kt"); + } + + @TestMetadata("longInt.kt") + public void testLongInt() throws Exception { + runTest("compiler/testData/codegen/box/operatorConventions/compareTo/longInt.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/optimizations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Optimizations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInOptimizations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/optimizations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt20844.kt") + public void testKt20844() throws Exception { + runTest("compiler/testData/codegen/box/optimizations/kt20844.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/package") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Package extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPackage() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/package"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boxPrimitiveTypeInClinit.kt") + public void testBoxPrimitiveTypeInClinit() throws Exception { + runTest("compiler/testData/codegen/box/package/boxPrimitiveTypeInClinit.kt"); + } + + @TestMetadata("checkCast.kt") + public void testCheckCast() throws Exception { + runTest("compiler/testData/codegen/box/package/checkCast.kt"); + } + + @TestMetadata("incrementProperty.kt") + public void testIncrementProperty() throws Exception { + runTest("compiler/testData/codegen/box/package/incrementProperty.kt"); + } + + @TestMetadata("initializationOrder.kt") + public void testInitializationOrder() throws Exception { + runTest("compiler/testData/codegen/box/package/initializationOrder.kt"); + } + + @TestMetadata("invokespecial.kt") + public void testInvokespecial() throws Exception { + runTest("compiler/testData/codegen/box/package/invokespecial.kt"); + } + + @TestMetadata("mainInFiles.kt") + public void testMainInFiles() throws Exception { + runTest("compiler/testData/codegen/box/package/mainInFiles.kt"); + } + + @TestMetadata("nullablePrimitiveNoFieldInitializer.kt") + public void testNullablePrimitiveNoFieldInitializer() throws Exception { + runTest("compiler/testData/codegen/box/package/nullablePrimitiveNoFieldInitializer.kt"); + } + + @TestMetadata("packageLocalClassNotImportedWithDefaultImport.kt") + public void testPackageLocalClassNotImportedWithDefaultImport() throws Exception { + runTest("compiler/testData/codegen/box/package/packageLocalClassNotImportedWithDefaultImport.kt"); + } + + @TestMetadata("packageQualifiedMethod.kt") + public void testPackageQualifiedMethod() throws Exception { + runTest("compiler/testData/codegen/box/package/packageQualifiedMethod.kt"); + } + + @TestMetadata("privateMembersInImportList.kt") + public void testPrivateMembersInImportList() throws Exception { + runTest("compiler/testData/codegen/box/package/privateMembersInImportList.kt"); + } + + @TestMetadata("privateTopLevelPropAndVarInInner.kt") + public void testPrivateTopLevelPropAndVarInInner() throws Exception { + runTest("compiler/testData/codegen/box/package/privateTopLevelPropAndVarInInner.kt"); + } + + @TestMetadata("referenceWithTheSameNameAsPackage.kt") + public void testReferenceWithTheSameNameAsPackage() throws Exception { + runTest("compiler/testData/codegen/box/package/referenceWithTheSameNameAsPackage.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/platformTypes") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class PlatformTypes extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPlatformTypes() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/platformTypes"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/platformTypes/primitives") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Primitives extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPrimitives() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/platformTypes/primitives"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("assign.kt") + public void testAssign() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/assign.kt"); + } + + @TestMetadata("compareTo.kt") + public void testCompareTo() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/compareTo.kt"); + } + + @TestMetadata("dec.kt") + public void testDec() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/dec.kt"); + } + + @TestMetadata("div.kt") + public void testDiv() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/div.kt"); + } + + @TestMetadata("equals.kt") + public void testEquals() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/equals.kt"); + } + + @TestMetadata("hashCode.kt") + public void testHashCode() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/hashCode.kt"); + } + + @TestMetadata("identityEquals.kt") + public void testIdentityEquals() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/identityEquals.kt"); + } + + @TestMetadata("inc.kt") + public void testInc() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/inc.kt"); + } + + @TestMetadata("minus.kt") + public void testMinus() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/minus.kt"); + } + + @TestMetadata("mod.kt") + public void testMod() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/mod.kt"); + } + + @TestMetadata("not.kt") + public void testNot() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/not.kt"); + } + + @TestMetadata("notEquals.kt") + public void testNotEquals() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/notEquals.kt"); + } + + @TestMetadata("plus.kt") + public void testPlus() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/plus.kt"); + } + + @TestMetadata("plusAssign.kt") + public void testPlusAssign() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/plusAssign.kt"); + } + + @TestMetadata("rangeTo.kt") + public void testRangeTo() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/rangeTo.kt"); + } + + @TestMetadata("times.kt") + public void testTimes() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/times.kt"); + } + + @TestMetadata("toShort.kt") + public void testToShort() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/toShort.kt"); + } + + @TestMetadata("toString.kt") + public void testToString() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/toString.kt"); + } + + @TestMetadata("unaryMinus.kt") + public void testUnaryMinus() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/unaryMinus.kt"); + } + + @TestMetadata("unaryPlus.kt") + public void testUnaryPlus() throws Exception { + runTest("compiler/testData/codegen/box/platformTypes/primitives/unaryPlus.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/primitiveTypes") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class PrimitiveTypes extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPrimitiveTypes() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/primitiveTypes"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("comparisonWithNaN.kt") + public void testComparisonWithNaN() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/comparisonWithNaN.kt"); + } + + @TestMetadata("comparisonWithNullCallsFun.kt") + public void testComparisonWithNullCallsFun() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/comparisonWithNullCallsFun.kt"); + } + + @TestMetadata("conversions.kt") + public void testConversions() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/conversions.kt"); + } + + @TestMetadata("crossTypeEquals.kt") + public void testCrossTypeEquals() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/crossTypeEquals.kt"); + } + + @TestMetadata("ea35963.kt") + public void testEa35963() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/ea35963.kt"); + } + + @TestMetadata("equalsHashCodeToString.kt") + public void testEqualsHashCodeToString() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalsHashCodeToString.kt"); + } + + @TestMetadata("incrementByteCharShort.kt") + public void testIncrementByteCharShort() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/incrementByteCharShort.kt"); + } + + @TestMetadata("intLiteralIsNotNull.kt") + public void testIntLiteralIsNotNull() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/intLiteralIsNotNull.kt"); + } + + @TestMetadata("kt1054.kt") + public void testKt1054() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt1054.kt"); + } + + @TestMetadata("kt1055.kt") + public void testKt1055() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt1055.kt"); + } + + @TestMetadata("kt1093.kt") + public void testKt1093() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt1093.kt"); + } + + @TestMetadata("kt13023.kt") + public void testKt13023() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt13023.kt"); + } + + @TestMetadata("kt14868.kt") + public void testKt14868() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt14868.kt"); + } + + @TestMetadata("kt1508.kt") + public void testKt1508() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt1508.kt"); + } + + @TestMetadata("kt1634.kt") + public void testKt1634() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt1634.kt"); + } + + @TestMetadata("kt16732.kt") + public void testKt16732() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt16732.kt"); + } + + @TestMetadata("kt2251.kt") + public void testKt2251() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt2251.kt"); + } + + @TestMetadata("kt2269.kt") + public void testKt2269() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt2269.kt"); + } + + @TestMetadata("kt2275.kt") + public void testKt2275() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt2275.kt"); + } + + @TestMetadata("kt239.kt") + public void testKt239() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt239.kt"); + } + + @TestMetadata("kt242.kt") + public void testKt242() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt242.kt"); + } + + @TestMetadata("kt243.kt") + public void testKt243() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt243.kt"); + } + + @TestMetadata("kt248.kt") + public void testKt248() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt248.kt"); + } + + @TestMetadata("kt2768.kt") + public void testKt2768() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt2768.kt"); + } + + @TestMetadata("kt2794.kt") + public void testKt2794() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt2794.kt"); + } + + @TestMetadata("kt3078.kt") + public void testKt3078() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt3078.kt"); + } + + @TestMetadata("kt3517.kt") + public void testKt3517() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt3517.kt"); + } + + @TestMetadata("kt3576.kt") + public void testKt3576() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt3576.kt"); + } + + @TestMetadata("kt3613.kt") + public void testKt3613() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt3613.kt"); + } + + @TestMetadata("kt4097.kt") + public void testKt4097() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt4097.kt"); + } + + @TestMetadata("kt4098.kt") + public void testKt4098() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt4098.kt"); + } + + @TestMetadata("kt4210.kt") + public void testKt4210() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt4210.kt"); + } + + @TestMetadata("kt4251.kt") + public void testKt4251() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt4251.kt"); + } + + @TestMetadata("kt446.kt") + public void testKt446() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt446.kt"); + } + + @TestMetadata("kt518.kt") + public void testKt518() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt518.kt"); + } + + @TestMetadata("kt6590_identityEquals.kt") + public void testKt6590_identityEquals() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt6590_identityEquals.kt"); + } + + @TestMetadata("kt665.kt") + public void testKt665() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt665.kt"); + } + + @TestMetadata("kt684.kt") + public void testKt684() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt684.kt"); + } + + @TestMetadata("kt711.kt") + public void testKt711() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt711.kt"); + } + + @TestMetadata("kt737.kt") + public void testKt737() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt737.kt"); + } + + @TestMetadata("kt752.kt") + public void testKt752() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt752.kt"); + } + + @TestMetadata("kt753.kt") + public void testKt753() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt753.kt"); + } + + @TestMetadata("kt756.kt") + public void testKt756() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt756.kt"); + } + + @TestMetadata("kt757.kt") + public void testKt757() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt757.kt"); + } + + @TestMetadata("kt828.kt") + public void testKt828() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt828.kt"); + } + + @TestMetadata("kt877.kt") + public void testKt877() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt877.kt"); + } + + @TestMetadata("kt882.kt") + public void testKt882() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt882.kt"); + } + + @TestMetadata("kt887.kt") + public void testKt887() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt887.kt"); + } + + @TestMetadata("kt935.kt") + public void testKt935() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/kt935.kt"); + } + + @TestMetadata("nullAsNullableIntIsNull.kt") + public void testNullAsNullableIntIsNull() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/nullAsNullableIntIsNull.kt"); + } + + @TestMetadata("nullableCharBoolean.kt") + public void testNullableCharBoolean() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/nullableCharBoolean.kt"); + } + + @TestMetadata("number.kt") + public void testNumber() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/number.kt"); + } + + @TestMetadata("rangeTo.kt") + public void testRangeTo() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/rangeTo.kt"); + } + + @TestMetadata("substituteIntForGeneric.kt") + public void testSubstituteIntForGeneric() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/substituteIntForGeneric.kt"); + } + + @TestMetadata("unboxComparable.kt") + public void testUnboxComparable() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/unboxComparable.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/primitiveTypes/equalityWithObject") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class EqualityWithObject extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEqualityWithObject() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/primitiveTypes/equalityWithObject"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boxedEqPrimitiveEvaluationOrder.kt") + public void testBoxedEqPrimitiveEvaluationOrder() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/boxedEqPrimitiveEvaluationOrder.kt"); + } + + @TestMetadata("boxedLongEqualsLong.kt") + public void testBoxedLongEqualsLong() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/boxedLongEqualsLong.kt"); + } + + @TestMetadata("objectWithAsymmetricEqualsEqPrimitive.kt") + public void testObjectWithAsymmetricEqualsEqPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/objectWithAsymmetricEqualsEqPrimitive.kt"); + } + + @TestMetadata("whenNullableBoxed.kt") + public void testWhenNullableBoxed() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/whenNullableBoxed.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Generated extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInGenerated() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boxedEqPrimitiveBoolean.kt") + public void testBoxedEqPrimitiveBoolean() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/boxedEqPrimitiveBoolean.kt"); + } + + @TestMetadata("boxedEqPrimitiveByte.kt") + public void testBoxedEqPrimitiveByte() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/boxedEqPrimitiveByte.kt"); + } + + @TestMetadata("boxedEqPrimitiveChar.kt") + public void testBoxedEqPrimitiveChar() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/boxedEqPrimitiveChar.kt"); + } + + @TestMetadata("boxedEqPrimitiveInt.kt") + public void testBoxedEqPrimitiveInt() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/boxedEqPrimitiveInt.kt"); + } + + @TestMetadata("boxedEqPrimitiveLong.kt") + public void testBoxedEqPrimitiveLong() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/boxedEqPrimitiveLong.kt"); + } + + @TestMetadata("boxedEqPrimitiveShort.kt") + public void testBoxedEqPrimitiveShort() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/boxedEqPrimitiveShort.kt"); + } + + @TestMetadata("primitiveEqBoxedBoolean.kt") + public void testPrimitiveEqBoxedBoolean() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqBoxedBoolean.kt"); + } + + @TestMetadata("primitiveEqBoxedByte.kt") + public void testPrimitiveEqBoxedByte() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqBoxedByte.kt"); + } + + @TestMetadata("primitiveEqBoxedChar.kt") + public void testPrimitiveEqBoxedChar() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqBoxedChar.kt"); + } + + @TestMetadata("primitiveEqBoxedInt.kt") + public void testPrimitiveEqBoxedInt() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqBoxedInt.kt"); + } + + @TestMetadata("primitiveEqBoxedLong.kt") + public void testPrimitiveEqBoxedLong() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqBoxedLong.kt"); + } + + @TestMetadata("primitiveEqBoxedShort.kt") + public void testPrimitiveEqBoxedShort() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqBoxedShort.kt"); + } + + @TestMetadata("primitiveEqObjectBoolean.kt") + public void testPrimitiveEqObjectBoolean() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqObjectBoolean.kt"); + } + + @TestMetadata("primitiveEqObjectByte.kt") + public void testPrimitiveEqObjectByte() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqObjectByte.kt"); + } + + @TestMetadata("primitiveEqObjectChar.kt") + public void testPrimitiveEqObjectChar() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqObjectChar.kt"); + } + + @TestMetadata("primitiveEqObjectInt.kt") + public void testPrimitiveEqObjectInt() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqObjectInt.kt"); + } + + @TestMetadata("primitiveEqObjectLong.kt") + public void testPrimitiveEqObjectLong() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqObjectLong.kt"); + } + + @TestMetadata("primitiveEqObjectShort.kt") + public void testPrimitiveEqObjectShort() throws Exception { + runTest("compiler/testData/codegen/box/primitiveTypes/equalityWithObject/generated/primitiveEqObjectShort.kt"); + } + } + } + } + + @TestMetadata("compiler/testData/codegen/box/private") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Private extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPrivate() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/private"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayConvention.kt") + public void testArrayConvention() throws Exception { + runTest("compiler/testData/codegen/box/private/arrayConvention.kt"); + } + + @TestMetadata("kt9855.kt") + public void testKt9855() throws Exception { + runTest("compiler/testData/codegen/box/private/kt9855.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/privateConstructors") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class PrivateConstructors extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPrivateConstructors() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/privateConstructors"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("base.kt") + public void testBase() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/base.kt"); + } + + @TestMetadata("captured.kt") + public void testCaptured() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/captured.kt"); + } + + @TestMetadata("companion.kt") + public void testCompanion() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/companion.kt"); + } + + @TestMetadata("inline.kt") + public void testInline() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/inline.kt"); + } + + @TestMetadata("inner.kt") + public void testInner() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/inner.kt"); + } + + @TestMetadata("kt4860.kt") + public void testKt4860() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/kt4860.kt"); + } + + @TestMetadata("secondary.kt") + public void testSecondary() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/secondary.kt"); + } + + @TestMetadata("synthetic.kt") + public void testSynthetic() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/synthetic.kt"); + } + + @TestMetadata("withArguments.kt") + public void testWithArguments() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/withArguments.kt"); + } + + @TestMetadata("withDefault.kt") + public void testWithDefault() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/withDefault.kt"); + } + + @TestMetadata("withLinkedClasses.kt") + public void testWithLinkedClasses() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/withLinkedClasses.kt"); + } + + @TestMetadata("withLinkedObjects.kt") + public void testWithLinkedObjects() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/withLinkedObjects.kt"); + } + + @TestMetadata("withVarargs.kt") + public void testWithVarargs() throws Exception { + runTest("compiler/testData/codegen/box/privateConstructors/withVarargs.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/properties") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Properties extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessToPrivateProperty.kt") + public void testAccessToPrivateProperty() throws Exception { + runTest("compiler/testData/codegen/box/properties/accessToPrivateProperty.kt"); + } + + @TestMetadata("accessToPrivateSetter.kt") + public void testAccessToPrivateSetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/accessToPrivateSetter.kt"); + } + + public void testAllFilesPresentInProperties() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("augmentedAssignmentsAndIncrements.kt") + public void testAugmentedAssignmentsAndIncrements() throws Exception { + runTest("compiler/testData/codegen/box/properties/augmentedAssignmentsAndIncrements.kt"); + } + + @TestMetadata("classArtificialFieldInsideNested.kt") + public void testClassArtificialFieldInsideNested() throws Exception { + runTest("compiler/testData/codegen/box/properties/classArtificialFieldInsideNested.kt"); + } + + @TestMetadata("classFieldInsideLambda.kt") + public void testClassFieldInsideLambda() throws Exception { + runTest("compiler/testData/codegen/box/properties/classFieldInsideLambda.kt"); + } + + @TestMetadata("classFieldInsideLocalInSetter.kt") + public void testClassFieldInsideLocalInSetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/classFieldInsideLocalInSetter.kt"); + } + + @TestMetadata("classFieldInsideNested.kt") + public void testClassFieldInsideNested() throws Exception { + runTest("compiler/testData/codegen/box/properties/classFieldInsideNested.kt"); + } + + @TestMetadata("classObjectProperties.kt") + public void testClassObjectProperties() throws Exception { + runTest("compiler/testData/codegen/box/properties/classObjectProperties.kt"); + } + + @TestMetadata("classPrivateArtificialFieldInsideNested.kt") + public void testClassPrivateArtificialFieldInsideNested() throws Exception { + runTest("compiler/testData/codegen/box/properties/classPrivateArtificialFieldInsideNested.kt"); + } + + @TestMetadata("collectionSize.kt") + public void testCollectionSize() throws Exception { + runTest("compiler/testData/codegen/box/properties/collectionSize.kt"); + } + + @TestMetadata("commonPropertiesKJK.kt") + public void testCommonPropertiesKJK() throws Exception { + runTest("compiler/testData/codegen/box/properties/commonPropertiesKJK.kt"); + } + + @TestMetadata("companionFieldInsideLambda.kt") + public void testCompanionFieldInsideLambda() throws Exception { + runTest("compiler/testData/codegen/box/properties/companionFieldInsideLambda.kt"); + } + + @TestMetadata("companionObjectAccessor.kt") + public void testCompanionObjectAccessor() throws Exception { + runTest("compiler/testData/codegen/box/properties/companionObjectAccessor.kt"); + } + + @TestMetadata("companionObjectPropertiesFromJava.kt") + public void testCompanionObjectPropertiesFromJava() throws Exception { + runTest("compiler/testData/codegen/box/properties/companionObjectPropertiesFromJava.kt"); + } + + @TestMetadata("companionPrivateField.kt") + public void testCompanionPrivateField() throws Exception { + runTest("compiler/testData/codegen/box/properties/companionPrivateField.kt"); + } + + @TestMetadata("companionPrivateFieldInsideLambda.kt") + public void testCompanionPrivateFieldInsideLambda() throws Exception { + runTest("compiler/testData/codegen/box/properties/companionPrivateFieldInsideLambda.kt"); + } + + @TestMetadata("field.kt") + public void testField() throws Exception { + runTest("compiler/testData/codegen/box/properties/field.kt"); + } + + @TestMetadata("fieldInClass.kt") + public void testFieldInClass() throws Exception { + runTest("compiler/testData/codegen/box/properties/fieldInClass.kt"); + } + + @TestMetadata("fieldInsideField.kt") + public void testFieldInsideField() throws Exception { + runTest("compiler/testData/codegen/box/properties/fieldInsideField.kt"); + } + + @TestMetadata("fieldInsideLambda.kt") + public void testFieldInsideLambda() throws Exception { + runTest("compiler/testData/codegen/box/properties/fieldInsideLambda.kt"); + } + + @TestMetadata("fieldInsideNested.kt") + public void testFieldInsideNested() throws Exception { + runTest("compiler/testData/codegen/box/properties/fieldInsideNested.kt"); + } + + @TestMetadata("fieldSimple.kt") + public void testFieldSimple() throws Exception { + runTest("compiler/testData/codegen/box/properties/fieldSimple.kt"); + } + + @TestMetadata("generalAccess.kt") + public void testGeneralAccess() throws Exception { + runTest("compiler/testData/codegen/box/properties/generalAccess.kt"); + } + + @TestMetadata("javaPropertyBoxedGetter.kt") + public void testJavaPropertyBoxedGetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/javaPropertyBoxedGetter.kt"); + } + + @TestMetadata("javaPropertyBoxedSetter.kt") + public void testJavaPropertyBoxedSetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/javaPropertyBoxedSetter.kt"); + } + + @TestMetadata("kt10715.kt") + public void testKt10715() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt10715.kt"); + } + + @TestMetadata("kt10729.kt") + public void testKt10729() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt10729.kt"); + } + + @TestMetadata("kt1159.kt") + public void testKt1159() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1159.kt"); + } + + @TestMetadata("kt1165.kt") + public void testKt1165() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1165.kt"); + } + + @TestMetadata("kt1168.kt") + public void testKt1168() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1168.kt"); + } + + @TestMetadata("kt1170.kt") + public void testKt1170() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1170.kt"); + } + + @TestMetadata("kt12200.kt") + public void testKt12200() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt12200.kt"); + } + + @TestMetadata("kt1398.kt") + public void testKt1398() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1398.kt"); + } + + @TestMetadata("kt1417.kt") + public void testKt1417() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1417.kt"); + } + + @TestMetadata("kt1482_2279.kt") + public void testKt1482_2279() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1482_2279.kt"); + } + + @TestMetadata("kt1714.kt") + public void testKt1714() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1714.kt"); + } + + @TestMetadata("kt1714_minimal.kt") + public void testKt1714_minimal() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1714_minimal.kt"); + } + + @TestMetadata("kt1892.kt") + public void testKt1892() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt1892.kt"); + } + + @TestMetadata("kt2331.kt") + public void testKt2331() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt2331.kt"); + } + + @TestMetadata("kt257.kt") + public void testKt257() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt257.kt"); + } + + @TestMetadata("kt2655.kt") + public void testKt2655() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt2655.kt"); + } + + @TestMetadata("kt2786.kt") + public void testKt2786() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt2786.kt"); + } + + @TestMetadata("kt2892.kt") + public void testKt2892() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt2892.kt"); + } + + @TestMetadata("kt3118.kt") + public void testKt3118() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt3118.kt"); + } + + @TestMetadata("kt3524.kt") + public void testKt3524() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt3524.kt"); + } + + @TestMetadata("kt3551.kt") + public void testKt3551() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt3551.kt"); + } + + @TestMetadata("kt3556.kt") + public void testKt3556() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt3556.kt"); + } + + @TestMetadata("kt3930.kt") + public void testKt3930() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt3930.kt"); + } + + @TestMetadata("kt4140.kt") + public void testKt4140() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt4140.kt"); + } + + @TestMetadata("kt4252.kt") + public void testKt4252() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt4252.kt"); + } + + @TestMetadata("kt4252_2.kt") + public void testKt4252_2() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt4252_2.kt"); + } + + @TestMetadata("kt4340.kt") + public void testKt4340() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt4340.kt"); + } + + @TestMetadata("kt4373.kt") + public void testKt4373() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt4373.kt"); + } + + @TestMetadata("kt4383.kt") + public void testKt4383() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt4383.kt"); + } + + @TestMetadata("kt613.kt") + public void testKt613() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt613.kt"); + } + + @TestMetadata("kt8928.kt") + public void testKt8928() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt8928.kt"); + } + + @TestMetadata("kt9603.kt") + public void testKt9603() throws Exception { + runTest("compiler/testData/codegen/box/properties/kt9603.kt"); + } + + @TestMetadata("primitiveOverrideDefaultAccessor.kt") + public void testPrimitiveOverrideDefaultAccessor() throws Exception { + runTest("compiler/testData/codegen/box/properties/primitiveOverrideDefaultAccessor.kt"); + } + + @TestMetadata("primitiveOverrideDelegateAccessor.kt") + public void testPrimitiveOverrideDelegateAccessor() throws Exception { + runTest("compiler/testData/codegen/box/properties/primitiveOverrideDelegateAccessor.kt"); + } + + @TestMetadata("privatePropertyInConstructor.kt") + public void testPrivatePropertyInConstructor() throws Exception { + runTest("compiler/testData/codegen/box/properties/privatePropertyInConstructor.kt"); + } + + @TestMetadata("privatePropertyWithoutBackingField.kt") + public void testPrivatePropertyWithoutBackingField() throws Exception { + runTest("compiler/testData/codegen/box/properties/privatePropertyWithoutBackingField.kt"); + } + + @TestMetadata("protectedJavaFieldInInline.kt") + public void testProtectedJavaFieldInInline() throws Exception { + runTest("compiler/testData/codegen/box/properties/protectedJavaFieldInInline.kt"); + } + + @TestMetadata("protectedJavaProperty.kt") + public void testProtectedJavaProperty() throws Exception { + runTest("compiler/testData/codegen/box/properties/protectedJavaProperty.kt"); + } + + @TestMetadata("protectedJavaPropertyInCompanion.kt") + public void testProtectedJavaPropertyInCompanion() throws Exception { + runTest("compiler/testData/codegen/box/properties/protectedJavaPropertyInCompanion.kt"); + } + + @TestMetadata("substituteJavaSuperField.kt") + public void testSubstituteJavaSuperField() throws Exception { + runTest("compiler/testData/codegen/box/properties/substituteJavaSuperField.kt"); + } + + @TestMetadata("twoAnnotatedExtensionPropertiesWithoutBackingFields.kt") + public void testTwoAnnotatedExtensionPropertiesWithoutBackingFields() throws Exception { + runTest("compiler/testData/codegen/box/properties/twoAnnotatedExtensionPropertiesWithoutBackingFields.kt"); + } + + @TestMetadata("typeInferredFromGetter.kt") + public void testTypeInferredFromGetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/typeInferredFromGetter.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/properties/const") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Const extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConst() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/const"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constFlags.kt") + public void testConstFlags() throws Exception { + runTest("compiler/testData/codegen/box/properties/const/constFlags.kt"); + } + + @TestMetadata("constValInAnnotationDefault.kt") + public void testConstValInAnnotationDefault() throws Exception { + runTest("compiler/testData/codegen/box/properties/const/constValInAnnotationDefault.kt"); + } + + @TestMetadata("interfaceCompanion.kt") + public void testInterfaceCompanion() throws Exception { + runTest("compiler/testData/codegen/box/properties/const/interfaceCompanion.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/properties/lateinit") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Lateinit extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessor.kt") + public void testAccessor() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/accessor.kt"); + } + + @TestMetadata("accessorException.kt") + public void testAccessorException() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/accessorException.kt"); + } + + public void testAllFilesPresentInLateinit() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("exceptionField.kt") + public void testExceptionField() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/exceptionField.kt"); + } + + @TestMetadata("exceptionGetter.kt") + public void testExceptionGetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/exceptionGetter.kt"); + } + + @TestMetadata("override.kt") + public void testOverride() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/override.kt"); + } + + @TestMetadata("overrideException.kt") + public void testOverrideException() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/overrideException.kt"); + } + + @TestMetadata("privateSetter.kt") + public void testPrivateSetter() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/privateSetter.kt"); + } + + @TestMetadata("privateSetterFromLambda.kt") + public void testPrivateSetterFromLambda() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/privateSetterFromLambda.kt"); + } + + @TestMetadata("privateSetterViaSubclass.kt") + public void testPrivateSetterViaSubclass() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/privateSetterViaSubclass.kt"); + } + + @TestMetadata("simpleVar.kt") + public void testSimpleVar() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/simpleVar.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class IsInitializedAndDeinitialize extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIsInitializedAndDeinitialize() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("emptyLhs.kt") + public void testEmptyLhs() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/emptyLhs.kt"); + } + + @TestMetadata("innerSubclass.kt") + public void testInnerSubclass() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt"); + } + + @TestMetadata("propertyImportedFromObject.kt") + public void testPropertyImportedFromObject() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/propertyImportedFromObject.kt"); + } + + @TestMetadata("sideEffects.kt") + public void testSideEffects() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt"); + } + + @TestMetadata("topLevelProperty.kt") + public void testTopLevelProperty() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/properties/lateinit/local") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Local extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocal() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/local"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("capturedLocalLateinit.kt") + public void testCapturedLocalLateinit() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/capturedLocalLateinit.kt"); + } + + @TestMetadata("kt23260.kt") + public void testKt23260() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/kt23260.kt"); + } + + @TestMetadata("localLateinit.kt") + public void testLocalLateinit() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/localLateinit.kt"); + } + + @TestMetadata("uninitializedCapturedMemberAccess.kt") + public void testUninitializedCapturedMemberAccess() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/uninitializedCapturedMemberAccess.kt"); + } + + @TestMetadata("uninitializedCapturedRead.kt") + public void testUninitializedCapturedRead() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/uninitializedCapturedRead.kt"); + } + + @TestMetadata("uninitializedMemberAccess.kt") + public void testUninitializedMemberAccess() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/uninitializedMemberAccess.kt"); + } + + @TestMetadata("uninitializedRead.kt") + public void testUninitializedRead() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/local/uninitializedRead.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/properties/lateinit/topLevel") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TopLevel extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessorException.kt") + public void testAccessorException() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/topLevel/accessorException.kt"); + } + + @TestMetadata("accessorForTopLevelLateinit.kt") + public void testAccessorForTopLevelLateinit() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/topLevel/accessorForTopLevelLateinit.kt"); + } + + public void testAllFilesPresentInTopLevel() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/topLevel"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("topLevelLateinit.kt") + public void testTopLevelLateinit() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/topLevel/topLevelLateinit.kt"); + } + + @TestMetadata("uninitializedMemberAccess.kt") + public void testUninitializedMemberAccess() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/topLevel/uninitializedMemberAccess.kt"); + } + + @TestMetadata("uninitializedRead.kt") + public void testUninitializedRead() throws Exception { + runTest("compiler/testData/codegen/box/properties/lateinit/topLevel/uninitializedRead.kt"); + } + } + } + } + + @TestMetadata("compiler/testData/codegen/box/publishedApi") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class PublishedApi extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInPublishedApi() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/publishedApi"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("noMangling.kt") + public void testNoMangling() throws Exception { + runTest("compiler/testData/codegen/box/publishedApi/noMangling.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/publishedApi/simple.kt"); + } + + @TestMetadata("topLevel.kt") + public void testTopLevel() throws Exception { + runTest("compiler/testData/codegen/box/publishedApi/topLevel.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Ranges extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInRanges() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forByteProgressionWithIntIncrement.kt") + public void testForByteProgressionWithIntIncrement() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forByteProgressionWithIntIncrement.kt"); + } + + @TestMetadata("forInRangeLiteralWithMixedTypeBounds.kt") + public void testForInRangeLiteralWithMixedTypeBounds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInRangeLiteralWithMixedTypeBounds.kt"); + } + + @TestMetadata("forInRangeWithImplicitReceiver.kt") + public void testForInRangeWithImplicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInRangeWithImplicitReceiver.kt"); + } + + @TestMetadata("forInStringVarUpdatedInLoopBody.kt") + public void testForInStringVarUpdatedInLoopBody() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInStringVarUpdatedInLoopBody.kt"); + } + + @TestMetadata("forIntRange.kt") + public void testForIntRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forIntRange.kt"); + } + + @TestMetadata("forNullableIntInRangeWithImplicitReceiver.kt") + public void testForNullableIntInRangeWithImplicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forNullableIntInRangeWithImplicitReceiver.kt"); + } + + @TestMetadata("multiAssignmentIterationOverIntRange.kt") + public void testMultiAssignmentIterationOverIntRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/multiAssignmentIterationOverIntRange.kt"); + } + + @TestMetadata("safeCallRangeTo.kt") + public void testSafeCallRangeTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/safeCallRangeTo.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/ranges/contains") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Contains extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInContains() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/contains"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("comparisonWithRangeBoundEliminated.kt") + public void testComparisonWithRangeBoundEliminated() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/comparisonWithRangeBoundEliminated.kt"); + } + + @TestMetadata("evaluationOrderForCollection.kt") + public void testEvaluationOrderForCollection() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/evaluationOrderForCollection.kt"); + } + + @TestMetadata("evaluationOrderForComparableRange.kt") + public void testEvaluationOrderForComparableRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/evaluationOrderForComparableRange.kt"); + } + + @TestMetadata("evaluationOrderForDownTo.kt") + public void testEvaluationOrderForDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/evaluationOrderForDownTo.kt"); + } + + @TestMetadata("evaluationOrderForRangeLiteral.kt") + public void testEvaluationOrderForRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/evaluationOrderForRangeLiteral.kt"); + } + + @TestMetadata("genericCharInRangeLiteral.kt") + public void testGenericCharInRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/genericCharInRangeLiteral.kt"); + } + + @TestMetadata("inArray.kt") + public void testInArray() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inArray.kt"); + } + + @TestMetadata("inCharSequence.kt") + public void testInCharSequence() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inCharSequence.kt"); + } + + @TestMetadata("inComparableRange.kt") + public void testInComparableRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inComparableRange.kt"); + } + + @TestMetadata("inCustomObjectRange.kt") + public void testInCustomObjectRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inCustomObjectRange.kt"); + } + + @TestMetadata("inDoubleRangeLiteralVsComparableRangeLiteral.kt") + public void testInDoubleRangeLiteralVsComparableRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inDoubleRangeLiteralVsComparableRangeLiteral.kt"); + } + + @TestMetadata("inExtensionRange.kt") + public void testInExtensionRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inExtensionRange.kt"); + } + + @TestMetadata("inFloatingPointRangeWithNaNBound.kt") + public void testInFloatingPointRangeWithNaNBound() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inFloatingPointRangeWithNaNBound.kt"); + } + + @TestMetadata("inIntRange.kt") + public void testInIntRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inIntRange.kt"); + } + + @TestMetadata("inIterable.kt") + public void testInIterable() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inIterable.kt"); + } + + @TestMetadata("inNonMatchingRange.kt") + public void testInNonMatchingRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inNonMatchingRange.kt"); + } + + @TestMetadata("inOptimizableDoubleRange.kt") + public void testInOptimizableDoubleRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inOptimizableDoubleRange.kt"); + } + + @TestMetadata("inOptimizableFloatRange.kt") + public void testInOptimizableFloatRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inOptimizableFloatRange.kt"); + } + + @TestMetadata("inOptimizableIntRange.kt") + public void testInOptimizableIntRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inOptimizableIntRange.kt"); + } + + @TestMetadata("inOptimizableLongRange.kt") + public void testInOptimizableLongRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inOptimizableLongRange.kt"); + } + + @TestMetadata("inPrimitiveProgression.kt") + public void testInPrimitiveProgression() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inPrimitiveProgression.kt"); + } + + @TestMetadata("inPrimitiveRange.kt") + public void testInPrimitiveRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inPrimitiveRange.kt"); + } + + @TestMetadata("inRangeLiteralComposition.kt") + public void testInRangeLiteralComposition() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inRangeLiteralComposition.kt"); + } + + @TestMetadata("inRangeWithCustomContains.kt") + public void testInRangeWithCustomContains() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inRangeWithCustomContains.kt"); + } + + @TestMetadata("inRangeWithImplicitReceiver.kt") + public void testInRangeWithImplicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inRangeWithImplicitReceiver.kt"); + } + + @TestMetadata("inRangeWithNonmatchingArguments.kt") + public void testInRangeWithNonmatchingArguments() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inRangeWithNonmatchingArguments.kt"); + } + + @TestMetadata("inRangeWithSmartCast.kt") + public void testInRangeWithSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inRangeWithSmartCast.kt"); + } + + @TestMetadata("inUntil.kt") + public void testInUntil() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/inUntil.kt"); + } + + @TestMetadata("kt20106.kt") + public void testKt20106() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/kt20106.kt"); + } + + @TestMetadata("nullableInPrimitiveRange.kt") + public void testNullableInPrimitiveRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/nullableInPrimitiveRange.kt"); + } + + @TestMetadata("rangeContainsString.kt") + public void testRangeContainsString() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/rangeContainsString.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/ranges/contains/generated") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Generated extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInGenerated() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/contains/generated"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("arrayIndices.kt") + public void testArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/arrayIndices.kt"); + } + + @TestMetadata("charDownTo.kt") + public void testCharDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/charDownTo.kt"); + } + + @TestMetadata("charRangeLiteral.kt") + public void testCharRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/charRangeLiteral.kt"); + } + + @TestMetadata("charSequenceIndices.kt") + public void testCharSequenceIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/charSequenceIndices.kt"); + } + + @TestMetadata("charUntil.kt") + public void testCharUntil() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/charUntil.kt"); + } + + @TestMetadata("collectionIndices.kt") + public void testCollectionIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/collectionIndices.kt"); + } + + @TestMetadata("doubleRangeLiteral.kt") + public void testDoubleRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/doubleRangeLiteral.kt"); + } + + @TestMetadata("floatRangeLiteral.kt") + public void testFloatRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/floatRangeLiteral.kt"); + } + + @TestMetadata("intDownTo.kt") + public void testIntDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/intDownTo.kt"); + } + + @TestMetadata("intRangeLiteral.kt") + public void testIntRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/intRangeLiteral.kt"); + } + + @TestMetadata("intUntil.kt") + public void testIntUntil() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/intUntil.kt"); + } + + @TestMetadata("longDownTo.kt") + public void testLongDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/longDownTo.kt"); + } + + @TestMetadata("longRangeLiteral.kt") + public void testLongRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/longRangeLiteral.kt"); + } + + @TestMetadata("longUntil.kt") + public void testLongUntil() throws Exception { + runTest("compiler/testData/codegen/box/ranges/contains/generated/longUntil.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/expression") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Expression extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExpression() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/expression"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("emptyDownto.kt") + public void testEmptyDownto() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/emptyDownto.kt"); + } + + @TestMetadata("emptyRange.kt") + public void testEmptyRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/emptyRange.kt"); + } + + @TestMetadata("inexactDownToMinValue.kt") + public void testInexactDownToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/inexactDownToMinValue.kt"); + } + + @TestMetadata("inexactSteppedDownTo.kt") + public void testInexactSteppedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/inexactSteppedDownTo.kt"); + } + + @TestMetadata("inexactSteppedRange.kt") + public void testInexactSteppedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/inexactSteppedRange.kt"); + } + + @TestMetadata("inexactToMaxValue.kt") + public void testInexactToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/inexactToMaxValue.kt"); + } + + @TestMetadata("maxValueMinusTwoToMaxValue.kt") + public void testMaxValueMinusTwoToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/maxValueMinusTwoToMaxValue.kt"); + } + + @TestMetadata("maxValueToMaxValue.kt") + public void testMaxValueToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/maxValueToMaxValue.kt"); + } + + @TestMetadata("maxValueToMinValue.kt") + public void testMaxValueToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/maxValueToMinValue.kt"); + } + + @TestMetadata("oneElementDownTo.kt") + public void testOneElementDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/oneElementDownTo.kt"); + } + + @TestMetadata("oneElementRange.kt") + public void testOneElementRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/oneElementRange.kt"); + } + + @TestMetadata("openRange.kt") + public void testOpenRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/openRange.kt"); + } + + @TestMetadata("progressionDownToMinValue.kt") + public void testProgressionDownToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/progressionDownToMinValue.kt"); + } + + @TestMetadata("progressionMaxValueMinusTwoToMaxValue.kt") + public void testProgressionMaxValueMinusTwoToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/progressionMaxValueMinusTwoToMaxValue.kt"); + } + + @TestMetadata("progressionMaxValueToMaxValue.kt") + public void testProgressionMaxValueToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/progressionMaxValueToMaxValue.kt"); + } + + @TestMetadata("progressionMaxValueToMinValue.kt") + public void testProgressionMaxValueToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/progressionMaxValueToMinValue.kt"); + } + + @TestMetadata("progressionMinValueToMinValue.kt") + public void testProgressionMinValueToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/progressionMinValueToMinValue.kt"); + } + + @TestMetadata("reversedBackSequence.kt") + public void testReversedBackSequence() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/reversedBackSequence.kt"); + } + + @TestMetadata("reversedEmptyBackSequence.kt") + public void testReversedEmptyBackSequence() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/reversedEmptyBackSequence.kt"); + } + + @TestMetadata("reversedEmptyRange.kt") + public void testReversedEmptyRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/reversedEmptyRange.kt"); + } + + @TestMetadata("reversedInexactSteppedDownTo.kt") + public void testReversedInexactSteppedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/reversedInexactSteppedDownTo.kt"); + } + + @TestMetadata("reversedRange.kt") + public void testReversedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/reversedRange.kt"); + } + + @TestMetadata("reversedSimpleSteppedRange.kt") + public void testReversedSimpleSteppedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/reversedSimpleSteppedRange.kt"); + } + + @TestMetadata("simpleDownTo.kt") + public void testSimpleDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/simpleDownTo.kt"); + } + + @TestMetadata("simpleRange.kt") + public void testSimpleRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/simpleRange.kt"); + } + + @TestMetadata("simpleRangeWithNonConstantEnds.kt") + public void testSimpleRangeWithNonConstantEnds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/simpleRangeWithNonConstantEnds.kt"); + } + + @TestMetadata("simpleSteppedDownTo.kt") + public void testSimpleSteppedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/simpleSteppedDownTo.kt"); + } + + @TestMetadata("simpleSteppedRange.kt") + public void testSimpleSteppedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/expression/simpleSteppedRange.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/forInDownTo") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInDownTo extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInDownTo() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/forInDownTo"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forIntInDownTo.kt") + public void testForIntInDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInDownTo/forIntInDownTo.kt"); + } + + @TestMetadata("forIntInDownToWithNonConstBounds.kt") + public void testForIntInDownToWithNonConstBounds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInDownTo/forIntInDownToWithNonConstBounds.kt"); + } + + @TestMetadata("forIntInNonOptimizedDownTo.kt") + public void testForIntInNonOptimizedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInDownTo/forIntInNonOptimizedDownTo.kt"); + } + + @TestMetadata("forLongInDownTo.kt") + public void testForLongInDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInDownTo/forLongInDownTo.kt"); + } + + @TestMetadata("forNullableIntInDownTo.kt") + public void testForNullableIntInDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInDownTo/forNullableIntInDownTo.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/forInIndices") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInIndices extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInIndices() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/forInIndices"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInCharSequenceIndices.kt") + public void testForInCharSequenceIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forInCharSequenceIndices.kt"); + } + + @TestMetadata("forInCollectionImplicitReceiverIndices.kt") + public void testForInCollectionImplicitReceiverIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forInCollectionImplicitReceiverIndices.kt"); + } + + @TestMetadata("forInCollectionIndices.kt") + public void testForInCollectionIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forInCollectionIndices.kt"); + } + + @TestMetadata("forInNonOptimizedIndices.kt") + public void testForInNonOptimizedIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forInNonOptimizedIndices.kt"); + } + + @TestMetadata("forInObjectArrayIndices.kt") + public void testForInObjectArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forInObjectArrayIndices.kt"); + } + + @TestMetadata("forInPrimitiveArrayIndices.kt") + public void testForInPrimitiveArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forInPrimitiveArrayIndices.kt"); + } + + @TestMetadata("forNullableIntInArrayIndices.kt") + public void testForNullableIntInArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forNullableIntInArrayIndices.kt"); + } + + @TestMetadata("forNullableIntInCollectionIndices.kt") + public void testForNullableIntInCollectionIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/forNullableIntInCollectionIndices.kt"); + } + + @TestMetadata("indexOfLast.kt") + public void testIndexOfLast() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/indexOfLast.kt"); + } + + @TestMetadata("kt12983_forInGenericArrayIndices.kt") + public void testKt12983_forInGenericArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt12983_forInGenericArrayIndices.kt"); + } + + @TestMetadata("kt12983_forInGenericCollectionIndices.kt") + public void testKt12983_forInGenericCollectionIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt12983_forInGenericCollectionIndices.kt"); + } + + @TestMetadata("kt12983_forInSpecificArrayIndices.kt") + public void testKt12983_forInSpecificArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt12983_forInSpecificArrayIndices.kt"); + } + + @TestMetadata("kt12983_forInSpecificCollectionIndices.kt") + public void testKt12983_forInSpecificCollectionIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt12983_forInSpecificCollectionIndices.kt"); + } + + @TestMetadata("kt13241_Array.kt") + public void testKt13241_Array() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt13241_Array.kt"); + } + + @TestMetadata("kt13241_CharSequence.kt") + public void testKt13241_CharSequence() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt13241_CharSequence.kt"); + } + + @TestMetadata("kt13241_Collection.kt") + public void testKt13241_Collection() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInIndices/kt13241_Collection.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/forInReversed") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInReversed extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInReversed() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/forInReversed"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInReversedArrayIndices.kt") + public void testForInReversedArrayIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedArrayIndices.kt"); + } + + @TestMetadata("forInReversedCharSequenceIndices.kt") + public void testForInReversedCharSequenceIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedCharSequenceIndices.kt"); + } + + @TestMetadata("forInReversedCollectionIndices.kt") + public void testForInReversedCollectionIndices() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedCollectionIndices.kt"); + } + + @TestMetadata("forInReversedDownTo.kt") + public void testForInReversedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedDownTo.kt"); + } + + @TestMetadata("forInReversedEmptyRange.kt") + public void testForInReversedEmptyRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedEmptyRange.kt"); + } + + @TestMetadata("forInReversedEmptyRangeLiteral.kt") + public void testForInReversedEmptyRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedEmptyRangeLiteral.kt"); + } + + @TestMetadata("forInReversedEmptyRangeLiteralWithNonConstBounds.kt") + public void testForInReversedEmptyRangeLiteralWithNonConstBounds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedEmptyRangeLiteralWithNonConstBounds.kt"); + } + + @TestMetadata("forInReversedRange.kt") + public void testForInReversedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedRange.kt"); + } + + @TestMetadata("forInReversedRangeLiteral.kt") + public void testForInReversedRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedRangeLiteral.kt"); + } + + @TestMetadata("forInReversedRangeLiteralWithNonConstBounds.kt") + public void testForInReversedRangeLiteralWithNonConstBounds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedRangeLiteralWithNonConstBounds.kt"); + } + + @TestMetadata("ForInReversedReversedRange.kt") + public void testForInReversedReversedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/ForInReversedReversedRange.kt"); + } + + @TestMetadata("forInReversedReversedReversedRange.kt") + public void testForInReversedReversedReversedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedReversedReversedRange.kt"); + } + + @TestMetadata("forInReversedUntil.kt") + public void testForInReversedUntil() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedUntil.kt"); + } + + @TestMetadata("forInReversedUntilWithNonConstBounds.kt") + public void testForInReversedUntilWithNonConstBounds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/forInReversedUntilWithNonConstBounds.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/ranges/forInReversed/evaluationOrder") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class EvaluationOrder extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEvaluationOrder() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/forInReversed/evaluationOrder"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInReversedDownToEvaluationOrder.kt") + public void testForInReversedDownToEvaluationOrder() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/evaluationOrder/forInReversedDownToEvaluationOrder.kt"); + } + + @TestMetadata("forInReversedRangeLiteralEvaluationOrder.kt") + public void testForInReversedRangeLiteralEvaluationOrder() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/evaluationOrder/forInReversedRangeLiteralEvaluationOrder.kt"); + } + + @TestMetadata("forInReversedUntilEvaluationOrder.kt") + public void testForInReversedUntilEvaluationOrder() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInReversed/evaluationOrder/forInReversedUntilEvaluationOrder.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/forInUntil") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForInUntil extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForInUntil() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/forInUntil"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInUntilChar.kt") + public void testForInUntilChar() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilChar.kt"); + } + + @TestMetadata("forInUntilChar0.kt") + public void testForInUntilChar0() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilChar0.kt"); + } + + @TestMetadata("forInUntilInt.kt") + public void testForInUntilInt() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilInt.kt"); + } + + @TestMetadata("forInUntilLesserInt.kt") + public void testForInUntilLesserInt() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilLesserInt.kt"); + } + + @TestMetadata("forInUntilLong.kt") + public void testForInUntilLong() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilLong.kt"); + } + + @TestMetadata("forInUntilMaxint.kt") + public void testForInUntilMaxint() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilMaxint.kt"); + } + + @TestMetadata("forInUntilMinint.kt") + public void testForInUntilMinint() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilMinint.kt"); + } + + @TestMetadata("forInUntilMinlong.kt") + public void testForInUntilMinlong() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forInUntilMinlong.kt"); + } + + @TestMetadata("forIntInIntUntilSmartcastInt.kt") + public void testForIntInIntUntilSmartcastInt() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forInUntil/forIntInIntUntilSmartcastInt.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/forWithPossibleOverflow") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ForWithPossibleOverflow extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInForWithPossibleOverflow() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/forWithPossibleOverflow"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("forInDownToCharMinValue.kt") + public void testForInDownToCharMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInDownToCharMinValue.kt"); + } + + @TestMetadata("forInDownToCharMinValueReversed.kt") + public void testForInDownToCharMinValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInDownToCharMinValueReversed.kt"); + } + + @TestMetadata("forInDownToIntMinValue.kt") + public void testForInDownToIntMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInDownToIntMinValue.kt"); + } + + @TestMetadata("forInDownToIntMinValueReversed.kt") + public void testForInDownToIntMinValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInDownToIntMinValueReversed.kt"); + } + + @TestMetadata("forInDownToLongMinValue.kt") + public void testForInDownToLongMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInDownToLongMinValue.kt"); + } + + @TestMetadata("forInDownToLongMinValueReversed.kt") + public void testForInDownToLongMinValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInDownToLongMinValueReversed.kt"); + } + + @TestMetadata("forInRangeToCharMaxValue.kt") + public void testForInRangeToCharMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInRangeToCharMaxValue.kt"); + } + + @TestMetadata("forInRangeToCharMaxValueReversed.kt") + public void testForInRangeToCharMaxValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInRangeToCharMaxValueReversed.kt"); + } + + @TestMetadata("forInRangeToIntMaxValue.kt") + public void testForInRangeToIntMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInRangeToIntMaxValue.kt"); + } + + @TestMetadata("forInRangeToIntMaxValueReversed.kt") + public void testForInRangeToIntMaxValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInRangeToIntMaxValueReversed.kt"); + } + + @TestMetadata("forInRangeToLongMaxValue.kt") + public void testForInRangeToLongMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInRangeToLongMaxValue.kt"); + } + + @TestMetadata("forInRangeToLongMaxValueReversed.kt") + public void testForInRangeToLongMaxValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInRangeToLongMaxValueReversed.kt"); + } + + @TestMetadata("forInUntilIntMinValueReversed.kt") + public void testForInUntilIntMinValueReversed() throws Exception { + runTest("compiler/testData/codegen/box/ranges/forWithPossibleOverflow/forInUntilIntMinValueReversed.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/literal") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Literal extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLiteral() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/literal"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("emptyDownto.kt") + public void testEmptyDownto() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/emptyDownto.kt"); + } + + @TestMetadata("emptyRange.kt") + public void testEmptyRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/emptyRange.kt"); + } + + @TestMetadata("inexactDownToMinValue.kt") + public void testInexactDownToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/inexactDownToMinValue.kt"); + } + + @TestMetadata("inexactSteppedDownTo.kt") + public void testInexactSteppedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/inexactSteppedDownTo.kt"); + } + + @TestMetadata("inexactSteppedRange.kt") + public void testInexactSteppedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/inexactSteppedRange.kt"); + } + + @TestMetadata("inexactToMaxValue.kt") + public void testInexactToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/inexactToMaxValue.kt"); + } + + @TestMetadata("maxValueMinusTwoToMaxValue.kt") + public void testMaxValueMinusTwoToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/maxValueMinusTwoToMaxValue.kt"); + } + + @TestMetadata("maxValueToMaxValue.kt") + public void testMaxValueToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/maxValueToMaxValue.kt"); + } + + @TestMetadata("maxValueToMinValue.kt") + public void testMaxValueToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/maxValueToMinValue.kt"); + } + + @TestMetadata("oneElementDownTo.kt") + public void testOneElementDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/oneElementDownTo.kt"); + } + + @TestMetadata("oneElementRange.kt") + public void testOneElementRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/oneElementRange.kt"); + } + + @TestMetadata("openRange.kt") + public void testOpenRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/openRange.kt"); + } + + @TestMetadata("progressionDownToMinValue.kt") + public void testProgressionDownToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/progressionDownToMinValue.kt"); + } + + @TestMetadata("progressionMaxValueMinusTwoToMaxValue.kt") + public void testProgressionMaxValueMinusTwoToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/progressionMaxValueMinusTwoToMaxValue.kt"); + } + + @TestMetadata("progressionMaxValueToMaxValue.kt") + public void testProgressionMaxValueToMaxValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/progressionMaxValueToMaxValue.kt"); + } + + @TestMetadata("progressionMaxValueToMinValue.kt") + public void testProgressionMaxValueToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/progressionMaxValueToMinValue.kt"); + } + + @TestMetadata("progressionMinValueToMinValue.kt") + public void testProgressionMinValueToMinValue() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/progressionMinValueToMinValue.kt"); + } + + @TestMetadata("reversedBackSequence.kt") + public void testReversedBackSequence() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/reversedBackSequence.kt"); + } + + @TestMetadata("reversedEmptyBackSequence.kt") + public void testReversedEmptyBackSequence() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/reversedEmptyBackSequence.kt"); + } + + @TestMetadata("reversedEmptyRange.kt") + public void testReversedEmptyRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/reversedEmptyRange.kt"); + } + + @TestMetadata("reversedInexactSteppedDownTo.kt") + public void testReversedInexactSteppedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/reversedInexactSteppedDownTo.kt"); + } + + @TestMetadata("reversedRange.kt") + public void testReversedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/reversedRange.kt"); + } + + @TestMetadata("reversedSimpleSteppedRange.kt") + public void testReversedSimpleSteppedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/reversedSimpleSteppedRange.kt"); + } + + @TestMetadata("simpleDownTo.kt") + public void testSimpleDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/simpleDownTo.kt"); + } + + @TestMetadata("simpleRange.kt") + public void testSimpleRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/simpleRange.kt"); + } + + @TestMetadata("simpleRangeWithNonConstantEnds.kt") + public void testSimpleRangeWithNonConstantEnds() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/simpleRangeWithNonConstantEnds.kt"); + } + + @TestMetadata("simpleSteppedDownTo.kt") + public void testSimpleSteppedDownTo() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/simpleSteppedDownTo.kt"); + } + + @TestMetadata("simpleSteppedRange.kt") + public void testSimpleSteppedRange() throws Exception { + runTest("compiler/testData/codegen/box/ranges/literal/simpleSteppedRange.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/ranges/nullableLoopParameter") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class NullableLoopParameter extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNullableLoopParameter() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/ranges/nullableLoopParameter"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("progressionExpression.kt") + public void testProgressionExpression() throws Exception { + runTest("compiler/testData/codegen/box/ranges/nullableLoopParameter/progressionExpression.kt"); + } + + @TestMetadata("rangeExpression.kt") + public void testRangeExpression() throws Exception { + runTest("compiler/testData/codegen/box/ranges/nullableLoopParameter/rangeExpression.kt"); + } + + @TestMetadata("rangeLiteral.kt") + public void testRangeLiteral() throws Exception { + runTest("compiler/testData/codegen/box/ranges/nullableLoopParameter/rangeLiteral.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Reflection extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInReflection() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/reflection/annotations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Annotations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInAnnotations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/annotations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotationRetentionAnnotation.kt") + public void testAnnotationRetentionAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/annotationRetentionAnnotation.kt"); + } + + @TestMetadata("annotationsOnJavaMembers.kt") + public void testAnnotationsOnJavaMembers() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/annotationsOnJavaMembers.kt"); + } + + @TestMetadata("findAnnotation.kt") + public void testFindAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/findAnnotation.kt"); + } + + @TestMetadata("openSuspendFun.kt") + public void testOpenSuspendFun() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/openSuspendFun.kt"); + } + + @TestMetadata("privateAnnotation.kt") + public void testPrivateAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/privateAnnotation.kt"); + } + + @TestMetadata("propertyAccessors.kt") + public void testPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/propertyAccessors.kt"); + } + + @TestMetadata("propertyWithoutBackingField.kt") + public void testPropertyWithoutBackingField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/propertyWithoutBackingField.kt"); + } + + @TestMetadata("retentions.kt") + public void testRetentions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/retentions.kt"); + } + + @TestMetadata("simpleClassAnnotation.kt") + public void testSimpleClassAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/simpleClassAnnotation.kt"); + } + + @TestMetadata("simpleConstructorAnnotation.kt") + public void testSimpleConstructorAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/simpleConstructorAnnotation.kt"); + } + + @TestMetadata("simpleFunAnnotation.kt") + public void testSimpleFunAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/simpleFunAnnotation.kt"); + } + + @TestMetadata("simpleParamAnnotation.kt") + public void testSimpleParamAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/simpleParamAnnotation.kt"); + } + + @TestMetadata("simpleValAnnotation.kt") + public void testSimpleValAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/annotations/simpleValAnnotation.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/call") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Call extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCall() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/call"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callInstanceJavaMethod.kt") + public void testCallInstanceJavaMethod() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/callInstanceJavaMethod.kt"); + } + + @TestMetadata("callPrivateJavaMethod.kt") + public void testCallPrivateJavaMethod() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/callPrivateJavaMethod.kt"); + } + + @TestMetadata("callStaticJavaMethod.kt") + public void testCallStaticJavaMethod() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/callStaticJavaMethod.kt"); + } + + @TestMetadata("cannotCallEnumConstructor.kt") + public void testCannotCallEnumConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/cannotCallEnumConstructor.kt"); + } + + @TestMetadata("disallowNullValueForNotNullField.kt") + public void testDisallowNullValueForNotNullField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/disallowNullValueForNotNullField.kt"); + } + + @TestMetadata("equalsHashCodeToString.kt") + public void testEqualsHashCodeToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/equalsHashCodeToString.kt"); + } + + @TestMetadata("exceptionHappened.kt") + public void testExceptionHappened() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/exceptionHappened.kt"); + } + + @TestMetadata("fakeOverride.kt") + public void testFakeOverride() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/fakeOverride.kt"); + } + + @TestMetadata("fakeOverrideSubstituted.kt") + public void testFakeOverrideSubstituted() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/fakeOverrideSubstituted.kt"); + } + + @TestMetadata("incorrectNumberOfArguments.kt") + public void testIncorrectNumberOfArguments() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/incorrectNumberOfArguments.kt"); + } + + @TestMetadata("innerClassConstructor.kt") + public void testInnerClassConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/innerClassConstructor.kt"); + } + + @TestMetadata("jvmStatic.kt") + public void testJvmStatic() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/jvmStatic.kt"); + } + + @TestMetadata("jvmStaticInObjectIncorrectReceiver.kt") + public void testJvmStaticInObjectIncorrectReceiver() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/jvmStaticInObjectIncorrectReceiver.kt"); + } + + @TestMetadata("localClassMember.kt") + public void testLocalClassMember() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/localClassMember.kt"); + } + + @TestMetadata("memberOfGenericClass.kt") + public void testMemberOfGenericClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/memberOfGenericClass.kt"); + } + + @TestMetadata("privateProperty.kt") + public void testPrivateProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/privateProperty.kt"); + } + + @TestMetadata("propertyAccessors.kt") + public void testPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/propertyAccessors.kt"); + } + + @TestMetadata("propertyGetterAndGetFunctionDifferentReturnType.kt") + public void testPropertyGetterAndGetFunctionDifferentReturnType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/propertyGetterAndGetFunctionDifferentReturnType.kt"); + } + + @TestMetadata("protectedMembers.kt") + public void testProtectedMembers() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/protectedMembers.kt"); + } + + @TestMetadata("returnUnit.kt") + public void testReturnUnit() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/returnUnit.kt"); + } + + @TestMetadata("simpleConstructor.kt") + public void testSimpleConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/simpleConstructor.kt"); + } + + @TestMetadata("simpleMemberFunction.kt") + public void testSimpleMemberFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/simpleMemberFunction.kt"); + } + + @TestMetadata("simpleTopLevelFunctions.kt") + public void testSimpleTopLevelFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/simpleTopLevelFunctions.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/reflection/call/bound") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Bound extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInBound() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/call/bound"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("companionObjectPropertyAccessors.kt") + public void testCompanionObjectPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/companionObjectPropertyAccessors.kt"); + } + + @TestMetadata("extensionFunction.kt") + public void testExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/extensionFunction.kt"); + } + + @TestMetadata("extensionPropertyAccessors.kt") + public void testExtensionPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/extensionPropertyAccessors.kt"); + } + + @TestMetadata("innerClassConstructor.kt") + public void testInnerClassConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/innerClassConstructor.kt"); + } + + @TestMetadata("javaInstanceField.kt") + public void testJavaInstanceField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/javaInstanceField.kt"); + } + + @TestMetadata("javaInstanceMethod.kt") + public void testJavaInstanceMethod() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/javaInstanceMethod.kt"); + } + + @TestMetadata("jvmStaticCompanionObjectPropertyAccessors.kt") + public void testJvmStaticCompanionObjectPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/jvmStaticCompanionObjectPropertyAccessors.kt"); + } + + @TestMetadata("jvmStaticObjectFunction.kt") + public void testJvmStaticObjectFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/jvmStaticObjectFunction.kt"); + } + + @TestMetadata("jvmStaticObjectPropertyAccessors.kt") + public void testJvmStaticObjectPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/jvmStaticObjectPropertyAccessors.kt"); + } + + @TestMetadata("memberFunction.kt") + public void testMemberFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/memberFunction.kt"); + } + + @TestMetadata("memberPropertyAccessors.kt") + public void testMemberPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/memberPropertyAccessors.kt"); + } + + @TestMetadata("objectFunction.kt") + public void testObjectFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/objectFunction.kt"); + } + + @TestMetadata("objectPropertyAccessors.kt") + public void testObjectPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/call/bound/objectPropertyAccessors.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/callBy") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CallBy extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCallBy() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/callBy"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boundExtensionFunction.kt") + public void testBoundExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/boundExtensionFunction.kt"); + } + + @TestMetadata("boundExtensionPropertyAcessor.kt") + public void testBoundExtensionPropertyAcessor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/boundExtensionPropertyAcessor.kt"); + } + + @TestMetadata("boundJvmStaticInObject.kt") + public void testBoundJvmStaticInObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/boundJvmStaticInObject.kt"); + } + + @TestMetadata("companionObject.kt") + public void testCompanionObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/companionObject.kt"); + } + + @TestMetadata("defaultAndNonDefaultIntertwined.kt") + public void testDefaultAndNonDefaultIntertwined() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/defaultAndNonDefaultIntertwined.kt"); + } + + @TestMetadata("extensionFunction.kt") + public void testExtensionFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/extensionFunction.kt"); + } + + @TestMetadata("jvmStaticInCompanionObject.kt") + public void testJvmStaticInCompanionObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/jvmStaticInCompanionObject.kt"); + } + + @TestMetadata("jvmStaticInObject.kt") + public void testJvmStaticInObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/jvmStaticInObject.kt"); + } + + @TestMetadata("manyArgumentsNoneDefaultConstructor.kt") + public void testManyArgumentsNoneDefaultConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/manyArgumentsNoneDefaultConstructor.kt"); + } + + @TestMetadata("manyArgumentsNoneDefaultFunction.kt") + public void testManyArgumentsNoneDefaultFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/manyArgumentsNoneDefaultFunction.kt"); + } + + @TestMetadata("manyArgumentsOnlyOneDefault.kt") + public void testManyArgumentsOnlyOneDefault() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/manyArgumentsOnlyOneDefault.kt"); + } + + @TestMetadata("manyMaskArguments.kt") + public void testManyMaskArguments() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/manyMaskArguments.kt"); + } + + @TestMetadata("nonDefaultParameterOmitted.kt") + public void testNonDefaultParameterOmitted() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/nonDefaultParameterOmitted.kt"); + } + + @TestMetadata("nullValue.kt") + public void testNullValue() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/nullValue.kt"); + } + + @TestMetadata("ordinaryMethodIsInvokedWhenNoDefaultValuesAreUsed.kt") + public void testOrdinaryMethodIsInvokedWhenNoDefaultValuesAreUsed() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/ordinaryMethodIsInvokedWhenNoDefaultValuesAreUsed.kt"); + } + + @TestMetadata("primitiveDefaultValues.kt") + public void testPrimitiveDefaultValues() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/primitiveDefaultValues.kt"); + } + + @TestMetadata("privateMemberFunction.kt") + public void testPrivateMemberFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/privateMemberFunction.kt"); + } + + @TestMetadata("simpleConstructor.kt") + public void testSimpleConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/simpleConstructor.kt"); + } + + @TestMetadata("simpleMemberFunciton.kt") + public void testSimpleMemberFunciton() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/simpleMemberFunciton.kt"); + } + + @TestMetadata("simpleTopLevelFunction.kt") + public void testSimpleTopLevelFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/callBy/simpleTopLevelFunction.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/classLiterals") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ClassLiterals extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInClassLiterals() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/classLiterals"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotationClassLiteral.kt") + public void testAnnotationClassLiteral() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/annotationClassLiteral.kt"); + } + + @TestMetadata("arrays.kt") + public void testArrays() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/arrays.kt"); + } + + @TestMetadata("builtinClassLiterals.kt") + public void testBuiltinClassLiterals() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/builtinClassLiterals.kt"); + } + + @TestMetadata("genericArrays.kt") + public void testGenericArrays() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/genericArrays.kt"); + } + + @TestMetadata("genericClass.kt") + public void testGenericClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/genericClass.kt"); + } + + @TestMetadata("reifiedTypeClassLiteral.kt") + public void testReifiedTypeClassLiteral() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/reifiedTypeClassLiteral.kt"); + } + + @TestMetadata("simpleClassLiteral.kt") + public void testSimpleClassLiteral() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classLiterals/simpleClassLiteral.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/classes") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Classes extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/classes"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("classSimpleName.kt") + public void testClassSimpleName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/classSimpleName.kt"); + } + + @TestMetadata("companionObject.kt") + public void testCompanionObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/companionObject.kt"); + } + + @TestMetadata("createInstance.kt") + public void testCreateInstance() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/createInstance.kt"); + } + + @TestMetadata("declaredMembers.kt") + public void testDeclaredMembers() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/declaredMembers.kt"); + } + + @TestMetadata("javaVoid.kt") + public void testJavaVoid() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/javaVoid.kt"); + } + + @TestMetadata("jvmName.kt") + public void testJvmName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/jvmName.kt"); + } + + @TestMetadata("jvmNameOfStandardClasses.kt") + public void testJvmNameOfStandardClasses() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/jvmNameOfStandardClasses.kt"); + } + + @TestMetadata("localClassSimpleName.kt") + public void testLocalClassSimpleName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/localClassSimpleName.kt"); + } + + @TestMetadata("nestedClasses.kt") + public void testNestedClasses() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/nestedClasses.kt"); + } + + @TestMetadata("nestedClassesJava.kt") + public void testNestedClassesJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/nestedClassesJava.kt"); + } + + @TestMetadata("objectInstance.kt") + public void testObjectInstance() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/objectInstance.kt"); + } + + @TestMetadata("primitiveKClassEquality.kt") + public void testPrimitiveKClassEquality() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/primitiveKClassEquality.kt"); + } + + @TestMetadata("qualifiedName.kt") + public void testQualifiedName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/qualifiedName.kt"); + } + + @TestMetadata("qualifiedNameOfStandardClasses.kt") + public void testQualifiedNameOfStandardClasses() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/qualifiedNameOfStandardClasses.kt"); + } + + @TestMetadata("starProjectedType.kt") + public void testStarProjectedType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/classes/starProjectedType.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/constructors") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Constructors extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConstructors() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/constructors"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotationClass.kt") + public void testAnnotationClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/constructors/annotationClass.kt"); + } + + @TestMetadata("classesWithoutConstructors.kt") + public void testClassesWithoutConstructors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/constructors/classesWithoutConstructors.kt"); + } + + @TestMetadata("constructorName.kt") + public void testConstructorName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/constructors/constructorName.kt"); + } + + @TestMetadata("primaryConstructor.kt") + public void testPrimaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/constructors/primaryConstructor.kt"); + } + + @TestMetadata("simpleGetConstructors.kt") + public void testSimpleGetConstructors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/constructors/simpleGetConstructors.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/createAnnotation") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CreateAnnotation extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCreateAnnotation() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/createAnnotation"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotationType.kt") + public void testAnnotationType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/annotationType.kt"); + } + + @TestMetadata("arrayOfKClasses.kt") + public void testArrayOfKClasses() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/arrayOfKClasses.kt"); + } + + @TestMetadata("callByJava.kt") + public void testCallByJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/callByJava.kt"); + } + + @TestMetadata("callByKotlin.kt") + public void testCallByKotlin() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/callByKotlin.kt"); + } + + @TestMetadata("callJava.kt") + public void testCallJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/callJava.kt"); + } + + @TestMetadata("callKotlin.kt") + public void testCallKotlin() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/callKotlin.kt"); + } + + @TestMetadata("createJdkAnnotationInstance.kt") + public void testCreateJdkAnnotationInstance() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/createJdkAnnotationInstance.kt"); + } + + @TestMetadata("enumKClassAnnotation.kt") + public void testEnumKClassAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/enumKClassAnnotation.kt"); + } + + @TestMetadata("equalsHashCodeToString.kt") + public void testEqualsHashCodeToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/equalsHashCodeToString.kt"); + } + + @TestMetadata("floatingPointParameters.kt") + public void testFloatingPointParameters() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/floatingPointParameters.kt"); + } + + @TestMetadata("parameterNamedEquals.kt") + public void testParameterNamedEquals() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/parameterNamedEquals.kt"); + } + + @TestMetadata("primitivesAndArrays.kt") + public void testPrimitivesAndArrays() throws Exception { + runTest("compiler/testData/codegen/box/reflection/createAnnotation/primitivesAndArrays.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/enclosing") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Enclosing extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEnclosing() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/enclosing"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anonymousObjectInInlinedLambda.kt") + public void testAnonymousObjectInInlinedLambda() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/anonymousObjectInInlinedLambda.kt"); + } + + @TestMetadata("classInLambda.kt") + public void testClassInLambda() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/classInLambda.kt"); + } + + @TestMetadata("functionExpressionInProperty.kt") + public void testFunctionExpressionInProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/functionExpressionInProperty.kt"); + } + + @TestMetadata("kt11969.kt") + public void testKt11969() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/kt11969.kt"); + } + + @TestMetadata("kt6368.kt") + public void testKt6368() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/kt6368.kt"); + } + + @TestMetadata("kt6691_lambdaInSamConstructor.kt") + public void testKt6691_lambdaInSamConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/kt6691_lambdaInSamConstructor.kt"); + } + + @TestMetadata("lambdaInClassObject.kt") + public void testLambdaInClassObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInClassObject.kt"); + } + + @TestMetadata("lambdaInConstructor.kt") + public void testLambdaInConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInConstructor.kt"); + } + + @TestMetadata("lambdaInFunction.kt") + public void testLambdaInFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInFunction.kt"); + } + + @TestMetadata("lambdaInLambda.kt") + public void testLambdaInLambda() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInLambda.kt"); + } + + @TestMetadata("lambdaInLocalClassConstructor.kt") + public void testLambdaInLocalClassConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInLocalClassConstructor.kt"); + } + + @TestMetadata("lambdaInLocalClassSuperCall.kt") + public void testLambdaInLocalClassSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInLocalClassSuperCall.kt"); + } + + @TestMetadata("lambdaInLocalFunction.kt") + public void testLambdaInLocalFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInLocalFunction.kt"); + } + + @TestMetadata("lambdaInMemberFunction.kt") + public void testLambdaInMemberFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInMemberFunction.kt"); + } + + @TestMetadata("lambdaInMemberFunctionInLocalClass.kt") + public void testLambdaInMemberFunctionInLocalClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInMemberFunctionInLocalClass.kt"); + } + + @TestMetadata("lambdaInMemberFunctionInNestedClass.kt") + public void testLambdaInMemberFunctionInNestedClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInMemberFunctionInNestedClass.kt"); + } + + @TestMetadata("lambdaInObjectDeclaration.kt") + public void testLambdaInObjectDeclaration() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInObjectDeclaration.kt"); + } + + @TestMetadata("lambdaInObjectExpression.kt") + public void testLambdaInObjectExpression() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInObjectExpression.kt"); + } + + @TestMetadata("lambdaInObjectLiteralSuperCall.kt") + public void testLambdaInObjectLiteralSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInObjectLiteralSuperCall.kt"); + } + + @TestMetadata("lambdaInPackage.kt") + public void testLambdaInPackage() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInPackage.kt"); + } + + @TestMetadata("lambdaInPropertyGetter.kt") + public void testLambdaInPropertyGetter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInPropertyGetter.kt"); + } + + @TestMetadata("lambdaInPropertySetter.kt") + public void testLambdaInPropertySetter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/lambdaInPropertySetter.kt"); + } + + @TestMetadata("localClassInTopLevelFunction.kt") + public void testLocalClassInTopLevelFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/localClassInTopLevelFunction.kt"); + } + + @TestMetadata("objectInLambda.kt") + public void testObjectInLambda() throws Exception { + runTest("compiler/testData/codegen/box/reflection/enclosing/objectInLambda.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/functions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Functions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFunctions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/functions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("declaredVsInheritedFunctions.kt") + public void testDeclaredVsInheritedFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/declaredVsInheritedFunctions.kt"); + } + + @TestMetadata("functionFromStdlib.kt") + public void testFunctionFromStdlib() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/functionFromStdlib.kt"); + } + + @TestMetadata("functionReferenceErasedToKFunction.kt") + public void testFunctionReferenceErasedToKFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/functionReferenceErasedToKFunction.kt"); + } + + @TestMetadata("genericOverriddenFunction.kt") + public void testGenericOverriddenFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/genericOverriddenFunction.kt"); + } + + @TestMetadata("instanceOfFunction.kt") + public void testInstanceOfFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/instanceOfFunction.kt"); + } + + @TestMetadata("javaClassGetFunctions.kt") + public void testJavaClassGetFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/javaClassGetFunctions.kt"); + } + + @TestMetadata("platformName.kt") + public void testPlatformName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/platformName.kt"); + } + + @TestMetadata("privateMemberFunction.kt") + public void testPrivateMemberFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/privateMemberFunction.kt"); + } + + @TestMetadata("simpleGetFunctions.kt") + public void testSimpleGetFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/simpleGetFunctions.kt"); + } + + @TestMetadata("simpleNames.kt") + public void testSimpleNames() throws Exception { + runTest("compiler/testData/codegen/box/reflection/functions/simpleNames.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/genericSignature") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class GenericSignature extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInGenericSignature() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/genericSignature"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("covariantOverride.kt") + public void testCovariantOverride() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/covariantOverride.kt"); + } + + @TestMetadata("defaultImplsGenericSignature.kt") + public void testDefaultImplsGenericSignature() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/defaultImplsGenericSignature.kt"); + } + + @TestMetadata("functionLiteralGenericSignature.kt") + public void testFunctionLiteralGenericSignature() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/functionLiteralGenericSignature.kt"); + } + + @TestMetadata("genericBackingFieldSignature.kt") + public void testGenericBackingFieldSignature() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/genericBackingFieldSignature.kt"); + } + + @TestMetadata("genericMethodSignature.kt") + public void testGenericMethodSignature() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/genericMethodSignature.kt"); + } + + @TestMetadata("kt11121.kt") + public void testKt11121() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/kt11121.kt"); + } + + @TestMetadata("kt5112.kt") + public void testKt5112() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/kt5112.kt"); + } + + @TestMetadata("kt6106.kt") + public void testKt6106() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/kt6106.kt"); + } + + @TestMetadata("signatureOfDeepGenericInner.kt") + public void testSignatureOfDeepGenericInner() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/signatureOfDeepGenericInner.kt"); + } + + @TestMetadata("signatureOfDeepInner.kt") + public void testSignatureOfDeepInner() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/signatureOfDeepInner.kt"); + } + + @TestMetadata("signatureOfDeepInnerLastGeneric.kt") + public void testSignatureOfDeepInnerLastGeneric() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/signatureOfDeepInnerLastGeneric.kt"); + } + + @TestMetadata("signatureOfGenericInnerGenericOuter.kt") + public void testSignatureOfGenericInnerGenericOuter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/signatureOfGenericInnerGenericOuter.kt"); + } + + @TestMetadata("signatureOfGenericInnerSimpleOuter.kt") + public void testSignatureOfGenericInnerSimpleOuter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/signatureOfGenericInnerSimpleOuter.kt"); + } + + @TestMetadata("signatureOfSimpleInnerSimpleOuter.kt") + public void testSignatureOfSimpleInnerSimpleOuter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/genericSignature/signatureOfSimpleInnerSimpleOuter.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/isInstance") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class IsInstance extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInIsInstance() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/isInstance"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("isInstanceCastAndSafeCast.kt") + public void testIsInstanceCastAndSafeCast() throws Exception { + runTest("compiler/testData/codegen/box/reflection/isInstance/isInstanceCastAndSafeCast.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/kClassInAnnotation") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class KClassInAnnotation extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInKClassInAnnotation() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/kClassInAnnotation"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("array.kt") + public void testArray() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/array.kt"); + } + + @TestMetadata("arrayInJava.kt") + public void testArrayInJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/arrayInJava.kt"); + } + + @TestMetadata("basic.kt") + public void testBasic() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/basic.kt"); + } + + @TestMetadata("basicInJava.kt") + public void testBasicInJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/basicInJava.kt"); + } + + @TestMetadata("checkcast.kt") + public void testCheckcast() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/checkcast.kt"); + } + + @TestMetadata("forceWrapping.kt") + public void testForceWrapping() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/forceWrapping.kt"); + } + + @TestMetadata("vararg.kt") + public void testVararg() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/vararg.kt"); + } + + @TestMetadata("varargInJava.kt") + public void testVarargInJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/varargInJava.kt"); + } + + @TestMetadata("wrappingForCallableReferences.kt") + public void testWrappingForCallableReferences() throws Exception { + runTest("compiler/testData/codegen/box/reflection/kClassInAnnotation/wrappingForCallableReferences.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/lambdaClasses") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LambdaClasses extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLambdaClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/lambdaClasses"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("parameterNamesAndNullability.kt") + public void testParameterNamesAndNullability() throws Exception { + runTest("compiler/testData/codegen/box/reflection/lambdaClasses/parameterNamesAndNullability.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/mapping") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Mapping extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMapping() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/mapping"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constructor.kt") + public void testConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/constructor.kt"); + } + + @TestMetadata("extensionProperty.kt") + public void testExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/extensionProperty.kt"); + } + + @TestMetadata("functions.kt") + public void testFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/functions.kt"); + } + + @TestMetadata("inlineReifiedFun.kt") + public void testInlineReifiedFun() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/inlineReifiedFun.kt"); + } + + @TestMetadata("mappedClassIsEqualToClassLiteral.kt") + public void testMappedClassIsEqualToClassLiteral() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/mappedClassIsEqualToClassLiteral.kt"); + } + + @TestMetadata("memberProperty.kt") + public void testMemberProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/memberProperty.kt"); + } + + @TestMetadata("openSuspendFun.kt") + public void testOpenSuspendFun() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/openSuspendFun.kt"); + } + + @TestMetadata("propertyAccessors.kt") + public void testPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/propertyAccessors.kt"); + } + + @TestMetadata("propertyAccessorsWithJvmName.kt") + public void testPropertyAccessorsWithJvmName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/propertyAccessorsWithJvmName.kt"); + } + + @TestMetadata("syntheticFields.kt") + public void testSyntheticFields() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/syntheticFields.kt"); + } + + @TestMetadata("topLevelFunctionOtherFile.kt") + public void testTopLevelFunctionOtherFile() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/topLevelFunctionOtherFile.kt"); + } + + @TestMetadata("topLevelProperty.kt") + public void testTopLevelProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/topLevelProperty.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/reflection/mapping/fakeOverrides") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class FakeOverrides extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInFakeOverrides() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/mapping/fakeOverrides"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("javaFieldGetterSetter.kt") + public void testJavaFieldGetterSetter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/fakeOverrides/javaFieldGetterSetter.kt"); + } + + @TestMetadata("javaMethod.kt") + public void testJavaMethod() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/fakeOverrides/javaMethod.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/mapping/jvmStatic") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class JvmStatic extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInJvmStatic() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/mapping/jvmStatic"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("companionObjectFunction.kt") + public void testCompanionObjectFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/jvmStatic/companionObjectFunction.kt"); + } + + @TestMetadata("objectFunction.kt") + public void testObjectFunction() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/jvmStatic/objectFunction.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/mapping/types") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Types extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTypes() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/mapping/types"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("annotationConstructorParameters.kt") + public void testAnnotationConstructorParameters() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/annotationConstructorParameters.kt"); + } + + @TestMetadata("array.kt") + public void testArray() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/array.kt"); + } + + @TestMetadata("constructors.kt") + public void testConstructors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/constructors.kt"); + } + + @TestMetadata("genericArrayElementType.kt") + public void testGenericArrayElementType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/genericArrayElementType.kt"); + } + + @TestMetadata("innerGenericTypeArgument.kt") + public void testInnerGenericTypeArgument() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/innerGenericTypeArgument.kt"); + } + + @TestMetadata("memberFunctions.kt") + public void testMemberFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/memberFunctions.kt"); + } + + @TestMetadata("overrideAnyWithPrimitive.kt") + public void testOverrideAnyWithPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/overrideAnyWithPrimitive.kt"); + } + + @TestMetadata("parameterizedTypeArgument.kt") + public void testParameterizedTypeArgument() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/parameterizedTypeArgument.kt"); + } + + @TestMetadata("parameterizedTypes.kt") + public void testParameterizedTypes() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/parameterizedTypes.kt"); + } + + @TestMetadata("propertyAccessors.kt") + public void testPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/propertyAccessors.kt"); + } + + @TestMetadata("supertypes.kt") + public void testSupertypes() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/supertypes.kt"); + } + + @TestMetadata("topLevelFunctions.kt") + public void testTopLevelFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/topLevelFunctions.kt"); + } + + @TestMetadata("typeParameters.kt") + public void testTypeParameters() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/typeParameters.kt"); + } + + @TestMetadata("unit.kt") + public void testUnit() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/unit.kt"); + } + + @TestMetadata("withNullability.kt") + public void testWithNullability() throws Exception { + runTest("compiler/testData/codegen/box/reflection/mapping/types/withNullability.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/methodsFromAny") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MethodsFromAny extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMethodsFromAny() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/methodsFromAny"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callableReferencesEqualToCallablesFromAPI.kt") + public void testCallableReferencesEqualToCallablesFromAPI() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/callableReferencesEqualToCallablesFromAPI.kt"); + } + + @TestMetadata("classToString.kt") + public void testClassToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/classToString.kt"); + } + + @TestMetadata("extensionPropertyReceiverToString.kt") + public void testExtensionPropertyReceiverToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/extensionPropertyReceiverToString.kt"); + } + + @TestMetadata("functionEqualsHashCode.kt") + public void testFunctionEqualsHashCode() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/functionEqualsHashCode.kt"); + } + + @TestMetadata("functionFromStdlibMultiFileFacade.kt") + public void testFunctionFromStdlibMultiFileFacade() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/functionFromStdlibMultiFileFacade.kt"); + } + + @TestMetadata("functionFromStdlibSingleFileFacade.kt") + public void testFunctionFromStdlibSingleFileFacade() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/functionFromStdlibSingleFileFacade.kt"); + } + + @TestMetadata("functionToString.kt") + public void testFunctionToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/functionToString.kt"); + } + + @TestMetadata("memberExtensionToString.kt") + public void testMemberExtensionToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/memberExtensionToString.kt"); + } + + @TestMetadata("parametersEqualsHashCode.kt") + public void testParametersEqualsHashCode() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/parametersEqualsHashCode.kt"); + } + + @TestMetadata("parametersToString.kt") + public void testParametersToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/parametersToString.kt"); + } + + @TestMetadata("propertyEqualsHashCode.kt") + public void testPropertyEqualsHashCode() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/propertyEqualsHashCode.kt"); + } + + @TestMetadata("propertyToString.kt") + public void testPropertyToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/propertyToString.kt"); + } + + @TestMetadata("typeEqualsHashCode.kt") + public void testTypeEqualsHashCode() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/typeEqualsHashCode.kt"); + } + + @TestMetadata("typeParametersEqualsHashCode.kt") + public void testTypeParametersEqualsHashCode() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/typeParametersEqualsHashCode.kt"); + } + + @TestMetadata("typeParametersToString.kt") + public void testTypeParametersToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/typeParametersToString.kt"); + } + + @TestMetadata("typeToString.kt") + public void testTypeToString() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/typeToString.kt"); + } + + @TestMetadata("typeToStringInnerGeneric.kt") + public void testTypeToStringInnerGeneric() throws Exception { + runTest("compiler/testData/codegen/box/reflection/methodsFromAny/typeToStringInnerGeneric.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/modifiers") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Modifiers extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInModifiers() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/modifiers"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callableModality.kt") + public void testCallableModality() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/callableModality.kt"); + } + + @TestMetadata("callableVisibility.kt") + public void testCallableVisibility() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/callableVisibility.kt"); + } + + @TestMetadata("classModality.kt") + public void testClassModality() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/classModality.kt"); + } + + @TestMetadata("classVisibility.kt") + public void testClassVisibility() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/classVisibility.kt"); + } + + @TestMetadata("classes.kt") + public void testClasses() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/classes.kt"); + } + + @TestMetadata("functions.kt") + public void testFunctions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/functions.kt"); + } + + @TestMetadata("javaVisibility.kt") + public void testJavaVisibility() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/javaVisibility.kt"); + } + + @TestMetadata("properties.kt") + public void testProperties() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/properties.kt"); + } + + @TestMetadata("typeParameters.kt") + public void testTypeParameters() throws Exception { + runTest("compiler/testData/codegen/box/reflection/modifiers/typeParameters.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/multifileClasses") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MultifileClasses extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMultifileClasses() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/multifileClasses"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callFunctionsInMultifileClass.kt") + public void testCallFunctionsInMultifileClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/multifileClasses/callFunctionsInMultifileClass.kt"); + } + + @TestMetadata("callPropertiesInMultifileClass.kt") + public void testCallPropertiesInMultifileClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/multifileClasses/callPropertiesInMultifileClass.kt"); + } + + @TestMetadata("javaFieldForVarAndConstVal.kt") + public void testJavaFieldForVarAndConstVal() throws Exception { + runTest("compiler/testData/codegen/box/reflection/multifileClasses/javaFieldForVarAndConstVal.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/noReflectAtRuntime") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class NoReflectAtRuntime extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNoReflectAtRuntime() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/noReflectAtRuntime"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("javaClass.kt") + public void testJavaClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/javaClass.kt"); + } + + @TestMetadata("javaVoid.kt") + public void testJavaVoid() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/javaVoid.kt"); + } + + @TestMetadata("primitiveJavaClass.kt") + public void testPrimitiveJavaClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/primitiveJavaClass.kt"); + } + + @TestMetadata("propertyGetSetName.kt") + public void testPropertyGetSetName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/propertyGetSetName.kt"); + } + + @TestMetadata("propertyInstanceof.kt") + public void testPropertyInstanceof() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/propertyInstanceof.kt"); + } + + @TestMetadata("reifiedTypeJavaClass.kt") + public void testReifiedTypeJavaClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/reifiedTypeJavaClass.kt"); + } + + @TestMetadata("simpleClassLiterals.kt") + public void testSimpleClassLiterals() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/simpleClassLiterals.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/reflection/noReflectAtRuntime/methodsFromAny") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class MethodsFromAny extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInMethodsFromAny() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/noReflectAtRuntime/methodsFromAny"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callableReferences.kt") + public void testCallableReferences() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/callableReferences.kt"); + } + + @TestMetadata("classReference.kt") + public void testClassReference() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/classReference.kt"); + } + + @TestMetadata("delegatedProperty.kt") + public void testDelegatedProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/delegatedProperty.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/parameters") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Parameters extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInParameters() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/parameters"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("boundInnerClassConstructor.kt") + public void testBoundInnerClassConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/boundInnerClassConstructor.kt"); + } + + @TestMetadata("boundObjectMemberReferences.kt") + public void testBoundObjectMemberReferences() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/boundObjectMemberReferences.kt"); + } + + @TestMetadata("boundReferences.kt") + public void testBoundReferences() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/boundReferences.kt"); + } + + @TestMetadata("findParameterByName.kt") + public void testFindParameterByName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/findParameterByName.kt"); + } + + @TestMetadata("functionParameterNameAndIndex.kt") + public void testFunctionParameterNameAndIndex() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/functionParameterNameAndIndex.kt"); + } + + @TestMetadata("instanceExtensionReceiverAndValueParameters.kt") + public void testInstanceExtensionReceiverAndValueParameters() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/instanceExtensionReceiverAndValueParameters.kt"); + } + + @TestMetadata("isMarkedNullable.kt") + public void testIsMarkedNullable() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/isMarkedNullable.kt"); + } + + @TestMetadata("isOptional.kt") + public void testIsOptional() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/isOptional.kt"); + } + + @TestMetadata("javaAnnotationConstructor.kt") + public void testJavaAnnotationConstructor() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/javaAnnotationConstructor.kt"); + } + + @TestMetadata("kinds.kt") + public void testKinds() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/kinds.kt"); + } + + @TestMetadata("propertySetter.kt") + public void testPropertySetter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/parameters/propertySetter.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/properties") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Properties extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInProperties() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/properties"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("allVsDeclared.kt") + public void testAllVsDeclared() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/allVsDeclared.kt"); + } + + @TestMetadata("callPrivatePropertyFromGetProperties.kt") + public void testCallPrivatePropertyFromGetProperties() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/callPrivatePropertyFromGetProperties.kt"); + } + + @TestMetadata("declaredVsInheritedProperties.kt") + public void testDeclaredVsInheritedProperties() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/declaredVsInheritedProperties.kt"); + } + + @TestMetadata("fakeOverridesInSubclass.kt") + public void testFakeOverridesInSubclass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/fakeOverridesInSubclass.kt"); + } + + @TestMetadata("genericClassLiteralPropertyReceiverIsStar.kt") + public void testGenericClassLiteralPropertyReceiverIsStar() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/genericClassLiteralPropertyReceiverIsStar.kt"); + } + + @TestMetadata("genericOverriddenProperty.kt") + public void testGenericOverriddenProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/genericOverriddenProperty.kt"); + } + + @TestMetadata("genericProperty.kt") + public void testGenericProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/genericProperty.kt"); + } + + @TestMetadata("getExtensionPropertiesMutableVsReadonly.kt") + public void testGetExtensionPropertiesMutableVsReadonly() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getExtensionPropertiesMutableVsReadonly.kt"); + } + + @TestMetadata("getPropertiesMutableVsReadonly.kt") + public void testGetPropertiesMutableVsReadonly() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getPropertiesMutableVsReadonly.kt"); + } + + @TestMetadata("invokeKProperty.kt") + public void testInvokeKProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/invokeKProperty.kt"); + } + + @TestMetadata("javaPropertyInheritedInKotlin.kt") + public void testJavaPropertyInheritedInKotlin() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/javaPropertyInheritedInKotlin.kt"); + } + + @TestMetadata("javaStaticField.kt") + public void testJavaStaticField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/javaStaticField.kt"); + } + + @TestMetadata("kotlinPropertyInheritedInJava.kt") + public void testKotlinPropertyInheritedInJava() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/kotlinPropertyInheritedInJava.kt"); + } + + @TestMetadata("memberAndMemberExtensionWithSameName.kt") + public void testMemberAndMemberExtensionWithSameName() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/memberAndMemberExtensionWithSameName.kt"); + } + + @TestMetadata("mutatePrivateJavaInstanceField.kt") + public void testMutatePrivateJavaInstanceField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/mutatePrivateJavaInstanceField.kt"); + } + + @TestMetadata("mutatePrivateJavaStaticField.kt") + public void testMutatePrivateJavaStaticField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/mutatePrivateJavaStaticField.kt"); + } + + @TestMetadata("noConflictOnKotlinGetterAndJavaField.kt") + public void testNoConflictOnKotlinGetterAndJavaField() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/noConflictOnKotlinGetterAndJavaField.kt"); + } + + @TestMetadata("overrideKotlinPropertyByJavaMethod.kt") + public void testOverrideKotlinPropertyByJavaMethod() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/overrideKotlinPropertyByJavaMethod.kt"); + } + + @TestMetadata("privateClassVal.kt") + public void testPrivateClassVal() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/privateClassVal.kt"); + } + + @TestMetadata("privateClassVar.kt") + public void testPrivateClassVar() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/privateClassVar.kt"); + } + + @TestMetadata("privateFakeOverrideFromSuperclass.kt") + public void testPrivateFakeOverrideFromSuperclass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/privateFakeOverrideFromSuperclass.kt"); + } + + @TestMetadata("privateJvmStaticVarInObject.kt") + public void testPrivateJvmStaticVarInObject() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/privateJvmStaticVarInObject.kt"); + } + + @TestMetadata("privatePropertyCallIsAccessibleOnAccessors.kt") + public void testPrivatePropertyCallIsAccessibleOnAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/privatePropertyCallIsAccessibleOnAccessors.kt"); + } + + @TestMetadata("privateToThisAccessors.kt") + public void testPrivateToThisAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/privateToThisAccessors.kt"); + } + + @TestMetadata("propertyOfNestedClassAndArrayType.kt") + public void testPropertyOfNestedClassAndArrayType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/propertyOfNestedClassAndArrayType.kt"); + } + + @TestMetadata("protectedClassVar.kt") + public void testProtectedClassVar() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/protectedClassVar.kt"); + } + + @TestMetadata("publicClassValAccessible.kt") + public void testPublicClassValAccessible() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/publicClassValAccessible.kt"); + } + + @TestMetadata("referenceToJavaFieldOfKotlinSubclass.kt") + public void testReferenceToJavaFieldOfKotlinSubclass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/referenceToJavaFieldOfKotlinSubclass.kt"); + } + + @TestMetadata("simpleGetProperties.kt") + public void testSimpleGetProperties() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/simpleGetProperties.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/reflection/properties/accessors") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Accessors extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessorNames.kt") + public void testAccessorNames() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/accessors/accessorNames.kt"); + } + + public void testAllFilesPresentInAccessors() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/properties/accessors"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("extensionPropertyAccessors.kt") + public void testExtensionPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/accessors/extensionPropertyAccessors.kt"); + } + + @TestMetadata("memberExtensions.kt") + public void testMemberExtensions() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/accessors/memberExtensions.kt"); + } + + @TestMetadata("memberPropertyAccessors.kt") + public void testMemberPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/accessors/memberPropertyAccessors.kt"); + } + + @TestMetadata("topLevelPropertyAccessors.kt") + public void testTopLevelPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/accessors/topLevelPropertyAccessors.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/properties/getDelegate") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class GetDelegate extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInGetDelegate() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/properties/getDelegate"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("booleanPropertyNameStartsWithIs.kt") + public void testBooleanPropertyNameStartsWithIs() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/booleanPropertyNameStartsWithIs.kt"); + } + + @TestMetadata("boundExtensionProperty.kt") + public void testBoundExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/boundExtensionProperty.kt"); + } + + @TestMetadata("boundMemberProperty.kt") + public void testBoundMemberProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/boundMemberProperty.kt"); + } + + @TestMetadata("extensionProperty.kt") + public void testExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/extensionProperty.kt"); + } + + @TestMetadata("fakeOverride.kt") + public void testFakeOverride() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/fakeOverride.kt"); + } + + @TestMetadata("getExtensionDelegate.kt") + public void testGetExtensionDelegate() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/getExtensionDelegate.kt"); + } + + @TestMetadata("kPropertyForDelegatedProperty.kt") + public void testKPropertyForDelegatedProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/kPropertyForDelegatedProperty.kt"); + } + + @TestMetadata("memberExtensionProperty.kt") + public void testMemberExtensionProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/memberExtensionProperty.kt"); + } + + @TestMetadata("memberProperty.kt") + public void testMemberProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/memberProperty.kt"); + } + + @TestMetadata("nameClashClassAndCompanion.kt") + public void testNameClashClassAndCompanion() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/nameClashClassAndCompanion.kt"); + } + + @TestMetadata("nameClashExtensionProperties.kt") + public void testNameClashExtensionProperties() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/nameClashExtensionProperties.kt"); + } + + @TestMetadata("noSetAccessibleTrue.kt") + public void testNoSetAccessibleTrue() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/noSetAccessibleTrue.kt"); + } + + @TestMetadata("notDelegatedProperty.kt") + public void testNotDelegatedProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/notDelegatedProperty.kt"); + } + + @TestMetadata("overrideDelegatedByDelegated.kt") + public void testOverrideDelegatedByDelegated() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/overrideDelegatedByDelegated.kt"); + } + + @TestMetadata("topLevelProperty.kt") + public void testTopLevelProperty() throws Exception { + runTest("compiler/testData/codegen/box/reflection/properties/getDelegate/topLevelProperty.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/properties/localDelegated") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class LocalDelegated extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInLocalDelegated() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/properties/localDelegated"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/specialBuiltIns") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SpecialBuiltIns extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSpecialBuiltIns() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/specialBuiltIns"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("getMembersOfStandardJavaClasses.kt") + public void testGetMembersOfStandardJavaClasses() throws Exception { + runTest("compiler/testData/codegen/box/reflection/specialBuiltIns/getMembersOfStandardJavaClasses.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/supertypes") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Supertypes extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSupertypes() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/supertypes"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("builtInClassSupertypes.kt") + public void testBuiltInClassSupertypes() throws Exception { + runTest("compiler/testData/codegen/box/reflection/supertypes/builtInClassSupertypes.kt"); + } + + @TestMetadata("genericSubstitution.kt") + public void testGenericSubstitution() throws Exception { + runTest("compiler/testData/codegen/box/reflection/supertypes/genericSubstitution.kt"); + } + + @TestMetadata("isSubclassOfIsSuperclassOf.kt") + public void testIsSubclassOfIsSuperclassOf() throws Exception { + runTest("compiler/testData/codegen/box/reflection/supertypes/isSubclassOfIsSuperclassOf.kt"); + } + + @TestMetadata("primitives.kt") + public void testPrimitives() throws Exception { + runTest("compiler/testData/codegen/box/reflection/supertypes/primitives.kt"); + } + + @TestMetadata("simpleSupertypes.kt") + public void testSimpleSupertypes() throws Exception { + runTest("compiler/testData/codegen/box/reflection/supertypes/simpleSupertypes.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/typeParameters") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TypeParameters extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTypeParameters() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/typeParameters"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("declarationSiteVariance.kt") + public void testDeclarationSiteVariance() throws Exception { + runTest("compiler/testData/codegen/box/reflection/typeParameters/declarationSiteVariance.kt"); + } + + @TestMetadata("typeParametersAndNames.kt") + public void testTypeParametersAndNames() throws Exception { + runTest("compiler/testData/codegen/box/reflection/typeParameters/typeParametersAndNames.kt"); + } + + @TestMetadata("upperBounds.kt") + public void testUpperBounds() throws Exception { + runTest("compiler/testData/codegen/box/reflection/typeParameters/upperBounds.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/types") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Types extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTypes() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/types"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("classifierIsClass.kt") + public void testClassifierIsClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/classifierIsClass.kt"); + } + + @TestMetadata("classifierIsTypeParameter.kt") + public void testClassifierIsTypeParameter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/classifierIsTypeParameter.kt"); + } + + @TestMetadata("classifiersOfBuiltInTypes.kt") + public void testClassifiersOfBuiltInTypes() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/classifiersOfBuiltInTypes.kt"); + } + + @TestMetadata("innerGenericArguments.kt") + public void testInnerGenericArguments() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/innerGenericArguments.kt"); + } + + @TestMetadata("jvmErasureOfClass.kt") + public void testJvmErasureOfClass() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/jvmErasureOfClass.kt"); + } + + @TestMetadata("jvmErasureOfTypeParameter.kt") + public void testJvmErasureOfTypeParameter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/jvmErasureOfTypeParameter.kt"); + } + + @TestMetadata("platformTypeNotEqualToKotlinType.kt") + public void testPlatformTypeNotEqualToKotlinType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/platformTypeNotEqualToKotlinType.kt"); + } + + @TestMetadata("typeArguments.kt") + public void testTypeArguments() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/typeArguments.kt"); + } + + @TestMetadata("useSiteVariance.kt") + public void testUseSiteVariance() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/useSiteVariance.kt"); + } + + @TestMetadata("withNullability.kt") + public void testWithNullability() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/withNullability.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/reflection/types/createType") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CreateType extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCreateType() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/types/createType"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("equality.kt") + public void testEquality() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/createType/equality.kt"); + } + + @TestMetadata("innerGeneric.kt") + public void testInnerGeneric() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/createType/innerGeneric.kt"); + } + + @TestMetadata("simpleCreateType.kt") + public void testSimpleCreateType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/createType/simpleCreateType.kt"); + } + + @TestMetadata("typeParameter.kt") + public void testTypeParameter() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/createType/typeParameter.kt"); + } + + @TestMetadata("wrongNumberOfArguments.kt") + public void testWrongNumberOfArguments() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/createType/wrongNumberOfArguments.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reflection/types/subtyping") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Subtyping extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSubtyping() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reflection/types/subtyping"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("platformType.kt") + public void testPlatformType() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/subtyping/platformType.kt"); + } + + @TestMetadata("simpleGenericTypes.kt") + public void testSimpleGenericTypes() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/subtyping/simpleGenericTypes.kt"); + } + + @TestMetadata("simpleSubtypeSupertype.kt") + public void testSimpleSubtypeSupertype() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/subtyping/simpleSubtypeSupertype.kt"); + } + + @TestMetadata("typeProjection.kt") + public void testTypeProjection() throws Exception { + runTest("compiler/testData/codegen/box/reflection/types/subtyping/typeProjection.kt"); + } + } + } + } + + @TestMetadata("compiler/testData/codegen/box/regressions") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Regressions extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInRegressions() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/regressions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("approximateIntersectionType.kt") + public void testApproximateIntersectionType() throws Exception { + runTest("compiler/testData/codegen/box/regressions/approximateIntersectionType.kt"); + } + + @TestMetadata("arrayLengthNPE.kt") + public void testArrayLengthNPE() throws Exception { + runTest("compiler/testData/codegen/box/regressions/arrayLengthNPE.kt"); + } + + @TestMetadata("collections.kt") + public void testCollections() throws Exception { + runTest("compiler/testData/codegen/box/regressions/collections.kt"); + } + + @TestMetadata("commonSupertypeContravariant.kt") + public void testCommonSupertypeContravariant() throws Exception { + runTest("compiler/testData/codegen/box/regressions/commonSupertypeContravariant.kt"); + } + + @TestMetadata("commonSupertypeContravariant2.kt") + public void testCommonSupertypeContravariant2() throws Exception { + runTest("compiler/testData/codegen/box/regressions/commonSupertypeContravariant2.kt"); + } + + @TestMetadata("dontCaptureTypesWithTypeVariables.kt") + public void testDontCaptureTypesWithTypeVariables() throws Exception { + runTest("compiler/testData/codegen/box/regressions/dontCaptureTypesWithTypeVariables.kt"); + } + + @TestMetadata("doubleMerge.kt") + public void testDoubleMerge() throws Exception { + runTest("compiler/testData/codegen/box/regressions/doubleMerge.kt"); + } + + @TestMetadata("floatMerge.kt") + public void testFloatMerge() throws Exception { + runTest("compiler/testData/codegen/box/regressions/floatMerge.kt"); + } + + @TestMetadata("functionLiteralAsLastExpressionInBlock.kt") + public void testFunctionLiteralAsLastExpressionInBlock() throws Exception { + runTest("compiler/testData/codegen/box/regressions/functionLiteralAsLastExpressionInBlock.kt"); + } + + @TestMetadata("generic.kt") + public void testGeneric() throws Exception { + runTest("compiler/testData/codegen/box/regressions/generic.kt"); + } + + @TestMetadata("getGenericInterfaces.kt") + public void testGetGenericInterfaces() throws Exception { + runTest("compiler/testData/codegen/box/regressions/getGenericInterfaces.kt"); + } + + @TestMetadata("hashCodeNPE.kt") + public void testHashCodeNPE() throws Exception { + runTest("compiler/testData/codegen/box/regressions/hashCodeNPE.kt"); + } + + @TestMetadata("internalTopLevelOtherPackage.kt") + public void testInternalTopLevelOtherPackage() throws Exception { + runTest("compiler/testData/codegen/box/regressions/internalTopLevelOtherPackage.kt"); + } + + @TestMetadata("intersectionAsLastLambda.kt") + public void testIntersectionAsLastLambda() throws Exception { + runTest("compiler/testData/codegen/box/regressions/intersectionAsLastLambda.kt"); + } + + @TestMetadata("intersectionOfEqualTypes.kt") + public void testIntersectionOfEqualTypes() throws Exception { + runTest("compiler/testData/codegen/box/regressions/intersectionOfEqualTypes.kt"); + } + + @TestMetadata("kt10143.kt") + public void testKt10143() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt10143.kt"); + } + + @TestMetadata("kt10934.kt") + public void testKt10934() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt10934.kt"); + } + + @TestMetadata("Kt1149.kt") + public void testKt1149() throws Exception { + runTest("compiler/testData/codegen/box/regressions/Kt1149.kt"); + } + + @TestMetadata("kt1172.kt") + public void testKt1172() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1172.kt"); + } + + @TestMetadata("kt13381.kt") + public void testKt13381() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt13381.kt"); + } + + @TestMetadata("kt14447.kt") + public void testKt14447() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt14447.kt"); + } + + @TestMetadata("kt1515.kt") + public void testKt1515() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1515.kt"); + } + + @TestMetadata("kt15196.kt") + public void testKt15196() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt15196.kt"); + } + + @TestMetadata("kt1528.kt") + public void testKt1528() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1528.kt"); + } + + @TestMetadata("kt1568.kt") + public void testKt1568() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1568.kt"); + } + + @TestMetadata("Kt1619Test.kt") + public void testKt1619Test() throws Exception { + runTest("compiler/testData/codegen/box/regressions/Kt1619Test.kt"); + } + + @TestMetadata("kt1779.kt") + public void testKt1779() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1779.kt"); + } + + @TestMetadata("kt1800.kt") + public void testKt1800() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1800.kt"); + } + + @TestMetadata("kt1845.kt") + public void testKt1845() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1845.kt"); + } + + @TestMetadata("kt18779.kt") + public void testKt18779() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt18779.kt"); + } + + @TestMetadata("kt1932.kt") + public void testKt1932() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt1932.kt"); + } + + @TestMetadata("kt2017.kt") + public void testKt2017() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2017.kt"); + } + + @TestMetadata("kt2060.kt") + public void testKt2060() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2060.kt"); + } + + @TestMetadata("kt2210.kt") + public void testKt2210() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2210.kt"); + } + + @TestMetadata("kt2246.kt") + public void testKt2246() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2246.kt"); + } + + @TestMetadata("kt2318.kt") + public void testKt2318() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2318.kt"); + } + + @TestMetadata("Kt2495Test.kt") + public void testKt2495Test() throws Exception { + runTest("compiler/testData/codegen/box/regressions/Kt2495Test.kt"); + } + + @TestMetadata("kt2509.kt") + public void testKt2509() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2509.kt"); + } + + @TestMetadata("kt2593.kt") + public void testKt2593() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt2593.kt"); + } + + @TestMetadata("kt274.kt") + public void testKt274() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt274.kt"); + } + + @TestMetadata("kt3046.kt") + public void testKt3046() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3046.kt"); + } + + @TestMetadata("kt3107.kt") + public void testKt3107() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3107.kt"); + } + + @TestMetadata("kt3421.kt") + public void testKt3421() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3421.kt"); + } + + @TestMetadata("kt344.kt") + public void testKt344() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt344.kt"); + } + + @TestMetadata("kt3442.kt") + public void testKt3442() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3442.kt"); + } + + @TestMetadata("kt3587.kt") + public void testKt3587() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3587.kt"); + } + + @TestMetadata("kt3850.kt") + public void testKt3850() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3850.kt"); + } + + @TestMetadata("kt3903.kt") + public void testKt3903() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt3903.kt"); + } + + @TestMetadata("kt4142.kt") + public void testKt4142() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt4142.kt"); + } + + @TestMetadata("kt4259.kt") + public void testKt4259() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt4259.kt"); + } + + @TestMetadata("kt4262.kt") + public void testKt4262() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt4262.kt"); + } + + @TestMetadata("kt4281.kt") + public void testKt4281() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt4281.kt"); + } + + @TestMetadata("kt5056.kt") + public void testKt5056() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt5056.kt"); + } + + @TestMetadata("kt528.kt") + public void testKt528() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt528.kt"); + } + + @TestMetadata("kt529.kt") + public void testKt529() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt529.kt"); + } + + @TestMetadata("kt533.kt") + public void testKt533() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt533.kt"); + } + + @TestMetadata("kt5395.kt") + public void testKt5395() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt5395.kt"); + } + + @TestMetadata("kt5445.kt") + public void testKt5445() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt5445.kt"); + } + + @TestMetadata("kt5445_2.kt") + public void testKt5445_2() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt5445_2.kt"); + } + + @TestMetadata("kt5786_privateWithDefault.kt") + public void testKt5786_privateWithDefault() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt5786_privateWithDefault.kt"); + } + + @TestMetadata("kt5953.kt") + public void testKt5953() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt5953.kt"); + } + + @TestMetadata("kt6153.kt") + public void testKt6153() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt6153.kt"); + } + + @TestMetadata("kt6434.kt") + public void testKt6434() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt6434.kt"); + } + + @TestMetadata("kt6434_2.kt") + public void testKt6434_2() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt6434_2.kt"); + } + + @TestMetadata("kt6485.kt") + public void testKt6485() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt6485.kt"); + } + + @TestMetadata("kt715.kt") + public void testKt715() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt715.kt"); + } + + @TestMetadata("kt7401.kt") + public void testKt7401() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt7401.kt"); + } + + @TestMetadata("kt789.kt") + public void testKt789() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt789.kt"); + } + + @TestMetadata("kt864.kt") + public void testKt864() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt864.kt"); + } + + @TestMetadata("kt998.kt") + public void testKt998() throws Exception { + runTest("compiler/testData/codegen/box/regressions/kt998.kt"); + } + + @TestMetadata("lambdaAsLastExpressionInLambda.kt") + public void testLambdaAsLastExpressionInLambda() throws Exception { + runTest("compiler/testData/codegen/box/regressions/lambdaAsLastExpressionInLambda.kt"); + } + + @TestMetadata("lambdaPostponeConstruction.kt") + public void testLambdaPostponeConstruction() throws Exception { + runTest("compiler/testData/codegen/box/regressions/lambdaPostponeConstruction.kt"); + } + + @TestMetadata("lambdaWrongReturnType.kt") + public void testLambdaWrongReturnType() throws Exception { + runTest("compiler/testData/codegen/box/regressions/lambdaWrongReturnType.kt"); + } + + @TestMetadata("nestedIntersection.kt") + public void testNestedIntersection() throws Exception { + runTest("compiler/testData/codegen/box/regressions/nestedIntersection.kt"); + } + + @TestMetadata("noAssertionsWhenNullableTypeParameterReplacedWithIntersectionType.kt") + public void testNoAssertionsWhenNullableTypeParameterReplacedWithIntersectionType() throws Exception { + runTest("compiler/testData/codegen/box/regressions/noAssertionsWhenNullableTypeParameterReplacedWithIntersectionType.kt"); + } + + @TestMetadata("noCapturingForTypesWithTypeVariables.kt") + public void testNoCapturingForTypesWithTypeVariables() throws Exception { + runTest("compiler/testData/codegen/box/regressions/noCapturingForTypesWithTypeVariables.kt"); + } + + @TestMetadata("noResolutionRecursion.kt") + public void testNoResolutionRecursion() throws Exception { + runTest("compiler/testData/codegen/box/regressions/noResolutionRecursion.kt"); + } + + @TestMetadata("nullabilityForCommonCapturedSupertypes.kt") + public void testNullabilityForCommonCapturedSupertypes() throws Exception { + runTest("compiler/testData/codegen/box/regressions/nullabilityForCommonCapturedSupertypes.kt"); + } + + @TestMetadata("nullableAfterExclExcl.kt") + public void testNullableAfterExclExcl() throws Exception { + runTest("compiler/testData/codegen/box/regressions/nullableAfterExclExcl.kt"); + } + + @TestMetadata("objectCaptureOuterConstructorProperty.kt") + public void testObjectCaptureOuterConstructorProperty() throws Exception { + runTest("compiler/testData/codegen/box/regressions/objectCaptureOuterConstructorProperty.kt"); + } + + @TestMetadata("objectInsideDelegation.kt") + public void testObjectInsideDelegation() throws Exception { + runTest("compiler/testData/codegen/box/regressions/objectInsideDelegation.kt"); + } + + @TestMetadata("referenceToSelfInLocal.kt") + public void testReferenceToSelfInLocal() throws Exception { + runTest("compiler/testData/codegen/box/regressions/referenceToSelfInLocal.kt"); + } + + @TestMetadata("resolvedCallForGetOperator.kt") + public void testResolvedCallForGetOperator() throws Exception { + runTest("compiler/testData/codegen/box/regressions/resolvedCallForGetOperator.kt"); + } + + @TestMetadata("supertypeDepth.kt") + public void testSupertypeDepth() throws Exception { + runTest("compiler/testData/codegen/box/regressions/supertypeDepth.kt"); + } + + @TestMetadata("typeCastException.kt") + public void testTypeCastException() throws Exception { + runTest("compiler/testData/codegen/box/regressions/typeCastException.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/reified") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Reified extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInReified() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reified"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anonymousObject.kt") + public void testAnonymousObject() throws Exception { + runTest("compiler/testData/codegen/box/reified/anonymousObject.kt"); + } + + @TestMetadata("anonymousObjectNoPropagate.kt") + public void testAnonymousObjectNoPropagate() throws Exception { + runTest("compiler/testData/codegen/box/reified/anonymousObjectNoPropagate.kt"); + } + + @TestMetadata("anonymousObjectReifiedSupertype.kt") + public void testAnonymousObjectReifiedSupertype() throws Exception { + runTest("compiler/testData/codegen/box/reified/anonymousObjectReifiedSupertype.kt"); + } + + @TestMetadata("approximateCapturedTypes.kt") + public void testApproximateCapturedTypes() throws Exception { + runTest("compiler/testData/codegen/box/reified/approximateCapturedTypes.kt"); + } + + @TestMetadata("asOnPlatformType.kt") + public void testAsOnPlatformType() throws Exception { + runTest("compiler/testData/codegen/box/reified/asOnPlatformType.kt"); + } + + @TestMetadata("checkcast.kt") + public void testCheckcast() throws Exception { + runTest("compiler/testData/codegen/box/reified/checkcast.kt"); + } + + @TestMetadata("copyToArray.kt") + public void testCopyToArray() throws Exception { + runTest("compiler/testData/codegen/box/reified/copyToArray.kt"); + } + + @TestMetadata("DIExample.kt") + public void testDIExample() throws Exception { + runTest("compiler/testData/codegen/box/reified/DIExample.kt"); + } + + @TestMetadata("defaultJavaClass.kt") + public void testDefaultJavaClass() throws Exception { + runTest("compiler/testData/codegen/box/reified/defaultJavaClass.kt"); + } + + @TestMetadata("expectedTypeFromCast.kt") + public void testExpectedTypeFromCast() throws Exception { + runTest("compiler/testData/codegen/box/reified/expectedTypeFromCast.kt"); + } + + @TestMetadata("filterIsInstance.kt") + public void testFilterIsInstance() throws Exception { + runTest("compiler/testData/codegen/box/reified/filterIsInstance.kt"); + } + + @TestMetadata("innerAnonymousObject.kt") + public void testInnerAnonymousObject() throws Exception { + runTest("compiler/testData/codegen/box/reified/innerAnonymousObject.kt"); + } + + @TestMetadata("instanceof.kt") + public void testInstanceof() throws Exception { + runTest("compiler/testData/codegen/box/reified/instanceof.kt"); + } + + @TestMetadata("isOnPlatformType.kt") + public void testIsOnPlatformType() throws Exception { + runTest("compiler/testData/codegen/box/reified/isOnPlatformType.kt"); + } + + @TestMetadata("javaClass.kt") + public void testJavaClass() throws Exception { + runTest("compiler/testData/codegen/box/reified/javaClass.kt"); + } + + @TestMetadata("nestedReified.kt") + public void testNestedReified() throws Exception { + runTest("compiler/testData/codegen/box/reified/nestedReified.kt"); + } + + @TestMetadata("nestedReifiedSignature.kt") + public void testNestedReifiedSignature() throws Exception { + runTest("compiler/testData/codegen/box/reified/nestedReifiedSignature.kt"); + } + + @TestMetadata("newArrayInt.kt") + public void testNewArrayInt() throws Exception { + runTest("compiler/testData/codegen/box/reified/newArrayInt.kt"); + } + + @TestMetadata("nonInlineableLambdaInReifiedFunction.kt") + public void testNonInlineableLambdaInReifiedFunction() throws Exception { + runTest("compiler/testData/codegen/box/reified/nonInlineableLambdaInReifiedFunction.kt"); + } + + @TestMetadata("recursiveInnerAnonymousObject.kt") + public void testRecursiveInnerAnonymousObject() throws Exception { + runTest("compiler/testData/codegen/box/reified/recursiveInnerAnonymousObject.kt"); + } + + @TestMetadata("recursiveNewArray.kt") + public void testRecursiveNewArray() throws Exception { + runTest("compiler/testData/codegen/box/reified/recursiveNewArray.kt"); + } + + @TestMetadata("recursiveNonInlineableLambda.kt") + public void testRecursiveNonInlineableLambda() throws Exception { + runTest("compiler/testData/codegen/box/reified/recursiveNonInlineableLambda.kt"); + } + + @TestMetadata("reifiedChain.kt") + public void testReifiedChain() throws Exception { + runTest("compiler/testData/codegen/box/reified/reifiedChain.kt"); + } + + @TestMetadata("reifiedInlineFunOfObject.kt") + public void testReifiedInlineFunOfObject() throws Exception { + runTest("compiler/testData/codegen/box/reified/reifiedInlineFunOfObject.kt"); + } + + @TestMetadata("reifiedInlineFunOfObjectWithinReified.kt") + public void testReifiedInlineFunOfObjectWithinReified() throws Exception { + runTest("compiler/testData/codegen/box/reified/reifiedInlineFunOfObjectWithinReified.kt"); + } + + @TestMetadata("reifiedInlineIntoNonInlineableLambda.kt") + public void testReifiedInlineIntoNonInlineableLambda() throws Exception { + runTest("compiler/testData/codegen/box/reified/reifiedInlineIntoNonInlineableLambda.kt"); + } + + @TestMetadata("safecast.kt") + public void testSafecast() throws Exception { + runTest("compiler/testData/codegen/box/reified/safecast.kt"); + } + + @TestMetadata("sameIndexRecursive.kt") + public void testSameIndexRecursive() throws Exception { + runTest("compiler/testData/codegen/box/reified/sameIndexRecursive.kt"); + } + + @TestMetadata("spreads.kt") + public void testSpreads() throws Exception { + runTest("compiler/testData/codegen/box/reified/spreads.kt"); + } + + @TestMetadata("varargs.kt") + public void testVarargs() throws Exception { + runTest("compiler/testData/codegen/box/reified/varargs.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/reified/arraysReification") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ArraysReification extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInArraysReification() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/reified/arraysReification"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("instanceOf.kt") + public void testInstanceOf() throws Exception { + runTest("compiler/testData/codegen/box/reified/arraysReification/instanceOf.kt"); + } + + @TestMetadata("instanceOfArrays.kt") + public void testInstanceOfArrays() throws Exception { + runTest("compiler/testData/codegen/box/reified/arraysReification/instanceOfArrays.kt"); + } + + @TestMetadata("jClass.kt") + public void testJClass() throws Exception { + runTest("compiler/testData/codegen/box/reified/arraysReification/jClass.kt"); + } + + @TestMetadata("jaggedArray.kt") + public void testJaggedArray() throws Exception { + runTest("compiler/testData/codegen/box/reified/arraysReification/jaggedArray.kt"); + } + + @TestMetadata("jaggedArrayOfNulls.kt") + public void testJaggedArrayOfNulls() throws Exception { + runTest("compiler/testData/codegen/box/reified/arraysReification/jaggedArrayOfNulls.kt"); + } + + @TestMetadata("jaggedDeep.kt") + public void testJaggedDeep() throws Exception { + runTest("compiler/testData/codegen/box/reified/arraysReification/jaggedDeep.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/safeCall") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SafeCall extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSafeCall() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/safeCall"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("genericNull.kt") + public void testGenericNull() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/genericNull.kt"); + } + + @TestMetadata("kt1572.kt") + public void testKt1572() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/kt1572.kt"); + } + + @TestMetadata("kt232.kt") + public void testKt232() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/kt232.kt"); + } + + @TestMetadata("kt245.kt") + public void testKt245() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/kt245.kt"); + } + + @TestMetadata("kt247.kt") + public void testKt247() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/kt247.kt"); + } + + @TestMetadata("kt3430.kt") + public void testKt3430() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/kt3430.kt"); + } + + @TestMetadata("kt4733.kt") + public void testKt4733() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/kt4733.kt"); + } + + @TestMetadata("primitive.kt") + public void testPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/primitive.kt"); + } + + @TestMetadata("primitiveEqSafeCall.kt") + public void testPrimitiveEqSafeCall() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/primitiveEqSafeCall.kt"); + } + + @TestMetadata("primitiveNotEqSafeCall.kt") + public void testPrimitiveNotEqSafeCall() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/primitiveNotEqSafeCall.kt"); + } + + @TestMetadata("safeCallEqPrimitive.kt") + public void testSafeCallEqPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/safeCallEqPrimitive.kt"); + } + + @TestMetadata("safeCallNotEqPrimitive.kt") + public void testSafeCallNotEqPrimitive() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/safeCallNotEqPrimitive.kt"); + } + + @TestMetadata("safeCallOnLong.kt") + public void testSafeCallOnLong() throws Exception { + runTest("compiler/testData/codegen/box/safeCall/safeCallOnLong.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/sam") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Sam extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSam() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/sam"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("compiler/testData/codegen/box/sam/constructors") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Constructors extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInConstructors() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/sam/constructors"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("comparator.kt") + public void testComparator() throws Exception { + runTest("compiler/testData/codegen/box/sam/constructors/comparator.kt"); + } + + @TestMetadata("filenameFilter.kt") + public void testFilenameFilter() throws Exception { + runTest("compiler/testData/codegen/box/sam/constructors/filenameFilter.kt"); + } + + @TestMetadata("nonLiteralComparator.kt") + public void testNonLiteralComparator() throws Exception { + runTest("compiler/testData/codegen/box/sam/constructors/nonLiteralComparator.kt"); + } + + @TestMetadata("nonLiteralFilenameFilter.kt") + public void testNonLiteralFilenameFilter() throws Exception { + runTest("compiler/testData/codegen/box/sam/constructors/nonLiteralFilenameFilter.kt"); + } + + @TestMetadata("samWrappersDifferentFiles.kt") + public void testSamWrappersDifferentFiles() throws Exception { + runTest("compiler/testData/codegen/box/sam/constructors/samWrappersDifferentFiles.kt"); + } + + @TestMetadata("sameWrapperClass.kt") + public void testSameWrapperClass() throws Exception { + runTest("compiler/testData/codegen/box/sam/constructors/sameWrapperClass.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/sealed") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Sealed extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSealed() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/sealed"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("objects.kt") + public void testObjects() throws Exception { + runTest("compiler/testData/codegen/box/sealed/objects.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/sealed/simple.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/secondaryConstructors") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SecondaryConstructors extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessToCompanion.kt") + public void testAccessToCompanion() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/accessToCompanion.kt"); + } + + @TestMetadata("accessToNestedObject.kt") + public void testAccessToNestedObject() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/accessToNestedObject.kt"); + } + + public void testAllFilesPresentInSecondaryConstructors() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/secondaryConstructors"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("basicNoPrimaryManySinks.kt") + public void testBasicNoPrimaryManySinks() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/basicNoPrimaryManySinks.kt"); + } + + @TestMetadata("basicNoPrimaryOneSink.kt") + public void testBasicNoPrimaryOneSink() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/basicNoPrimaryOneSink.kt"); + } + + @TestMetadata("basicPrimary.kt") + public void testBasicPrimary() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/basicPrimary.kt"); + } + + @TestMetadata("callFromLocalSubClass.kt") + public void testCallFromLocalSubClass() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/callFromLocalSubClass.kt"); + } + + @TestMetadata("callFromPrimaryWithNamedArgs.kt") + public void testCallFromPrimaryWithNamedArgs() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/callFromPrimaryWithNamedArgs.kt"); + } + + @TestMetadata("callFromPrimaryWithOptionalArgs.kt") + public void testCallFromPrimaryWithOptionalArgs() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/callFromPrimaryWithOptionalArgs.kt"); + } + + @TestMetadata("callFromSubClass.kt") + public void testCallFromSubClass() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/callFromSubClass.kt"); + } + + @TestMetadata("clashingDefaultConstructors.kt") + public void testClashingDefaultConstructors() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/clashingDefaultConstructors.kt"); + } + + @TestMetadata("dataClasses.kt") + public void testDataClasses() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/dataClasses.kt"); + } + + @TestMetadata("defaultArgs.kt") + public void testDefaultArgs() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/defaultArgs.kt"); + } + + @TestMetadata("defaultParametersNotDuplicated.kt") + public void testDefaultParametersNotDuplicated() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/defaultParametersNotDuplicated.kt"); + } + + @TestMetadata("delegateWithComplexExpression.kt") + public void testDelegateWithComplexExpression() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/delegateWithComplexExpression.kt"); + } + + @TestMetadata("delegatedThisWithLambda.kt") + public void testDelegatedThisWithLambda() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/delegatedThisWithLambda.kt"); + } + + @TestMetadata("delegationWithPrimary.kt") + public void testDelegationWithPrimary() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/delegationWithPrimary.kt"); + } + + @TestMetadata("enums.kt") + public void testEnums() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/enums.kt"); + } + + @TestMetadata("generics.kt") + public void testGenerics() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/generics.kt"); + } + + @TestMetadata("innerClasses.kt") + public void testInnerClasses() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/innerClasses.kt"); + } + + @TestMetadata("innerClassesInheritance.kt") + public void testInnerClassesInheritance() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/innerClassesInheritance.kt"); + } + + @TestMetadata("localClasses.kt") + public void testLocalClasses() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/localClasses.kt"); + } + + @TestMetadata("superCallPrimary.kt") + public void testSuperCallPrimary() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/superCallPrimary.kt"); + } + + @TestMetadata("superCallSecondary.kt") + public void testSuperCallSecondary() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/superCallSecondary.kt"); + } + + @TestMetadata("varargs.kt") + public void testVarargs() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/varargs.kt"); + } + + @TestMetadata("withNonLocalReturn.kt") + public void testWithNonLocalReturn() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/withNonLocalReturn.kt"); + } + + @TestMetadata("withReturn.kt") + public void testWithReturn() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/withReturn.kt"); + } + + @TestMetadata("withReturnUnit.kt") + public void testWithReturnUnit() throws Exception { + runTest("compiler/testData/codegen/box/secondaryConstructors/withReturnUnit.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/signatureAnnotations") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SignatureAnnotations extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSignatureAnnotations() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/signatureAnnotations"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + + @TestMetadata("compiler/testData/codegen/box/smap") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Smap extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSmap() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/smap"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + + @TestMetadata("compiler/testData/codegen/box/smartCasts") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SmartCasts extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSmartCasts() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/smartCasts"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("falseSmartCast.kt") + public void testFalseSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/falseSmartCast.kt"); + } + + @TestMetadata("genericIntersection.kt") + public void testGenericIntersection() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/genericIntersection.kt"); + } + + @TestMetadata("genericSet.kt") + public void testGenericSet() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/genericSet.kt"); + } + + @TestMetadata("implicitExtensionReceiver.kt") + public void testImplicitExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/implicitExtensionReceiver.kt"); + } + + @TestMetadata("implicitMemberReceiver.kt") + public void testImplicitMemberReceiver() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/implicitMemberReceiver.kt"); + } + + @TestMetadata("implicitReceiver.kt") + public void testImplicitReceiver() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/implicitReceiver.kt"); + } + + @TestMetadata("implicitReceiverInWhen.kt") + public void testImplicitReceiverInWhen() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/implicitReceiverInWhen.kt"); + } + + @TestMetadata("implicitToGrandSon.kt") + public void testImplicitToGrandSon() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/implicitToGrandSon.kt"); + } + + @TestMetadata("kt17725.kt") + public void testKt17725() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/kt17725.kt"); + } + + @TestMetadata("kt19100.kt") + public void testKt19100() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/kt19100.kt"); + } + + @TestMetadata("lambdaArgumentWithoutType.kt") + public void testLambdaArgumentWithoutType() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/lambdaArgumentWithoutType.kt"); + } + + @TestMetadata("nullSmartCast.kt") + public void testNullSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/nullSmartCast.kt"); + } + + @TestMetadata("smartCastInsideIf.kt") + public void testSmartCastInsideIf() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/smartCastInsideIf.kt"); + } + + @TestMetadata("whenSmartCast.kt") + public void testWhenSmartCast() throws Exception { + runTest("compiler/testData/codegen/box/smartCasts/whenSmartCast.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/specialBuiltins") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SpecialBuiltins extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSpecialBuiltins() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/specialBuiltins"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("bridgeNotEmptyMap.kt") + public void testBridgeNotEmptyMap() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/bridgeNotEmptyMap.kt"); + } + + @TestMetadata("bridges.kt") + public void testBridges() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/bridges.kt"); + } + + @TestMetadata("collectionImpl.kt") + public void testCollectionImpl() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/collectionImpl.kt"); + } + + @TestMetadata("commonBridgesTarget.kt") + public void testCommonBridgesTarget() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/commonBridgesTarget.kt"); + } + + @TestMetadata("emptyList.kt") + public void testEmptyList() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/emptyList.kt"); + } + + @TestMetadata("emptyMap.kt") + public void testEmptyMap() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/emptyMap.kt"); + } + + @TestMetadata("emptyStringMap.kt") + public void testEmptyStringMap() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/emptyStringMap.kt"); + } + + @TestMetadata("entrySetSOE.kt") + public void testEntrySetSOE() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/entrySetSOE.kt"); + } + + @TestMetadata("enumAsOrdinaled.kt") + public void testEnumAsOrdinaled() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/enumAsOrdinaled.kt"); + } + + @TestMetadata("exceptionCause.kt") + public void testExceptionCause() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/exceptionCause.kt"); + } + + @TestMetadata("explicitSuperCall.kt") + public void testExplicitSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/explicitSuperCall.kt"); + } + + @TestMetadata("irrelevantRemoveAtOverride.kt") + public void testIrrelevantRemoveAtOverride() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/irrelevantRemoveAtOverride.kt"); + } + + @TestMetadata("maps.kt") + public void testMaps() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/maps.kt"); + } + + @TestMetadata("noSpecialBridgeInSuperClass.kt") + public void testNoSpecialBridgeInSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/noSpecialBridgeInSuperClass.kt"); + } + + @TestMetadata("notEmptyListAny.kt") + public void testNotEmptyListAny() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/notEmptyListAny.kt"); + } + + @TestMetadata("notEmptyMap.kt") + public void testNotEmptyMap() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/notEmptyMap.kt"); + } + + @TestMetadata("redundantStubForSize.kt") + public void testRedundantStubForSize() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/redundantStubForSize.kt"); + } + + @TestMetadata("removeAtTwoSpecialBridges.kt") + public void testRemoveAtTwoSpecialBridges() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/removeAtTwoSpecialBridges.kt"); + } + + @TestMetadata("removeSetInt.kt") + public void testRemoveSetInt() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/removeSetInt.kt"); + } + + @TestMetadata("throwable.kt") + public void testThrowable() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/throwable.kt"); + } + + @TestMetadata("throwableCause.kt") + public void testThrowableCause() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/throwableCause.kt"); + } + + @TestMetadata("throwableImpl.kt") + public void testThrowableImpl() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/throwableImpl.kt"); + } + + @TestMetadata("throwableImplWithSecondaryConstructor.kt") + public void testThrowableImplWithSecondaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/throwableImplWithSecondaryConstructor.kt"); + } + + @TestMetadata("valuesInsideEnum.kt") + public void testValuesInsideEnum() throws Exception { + runTest("compiler/testData/codegen/box/specialBuiltins/valuesInsideEnum.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/statics") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Statics extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInStatics() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/statics"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("anonymousInitializerIObject.kt") + public void testAnonymousInitializerIObject() throws Exception { + runTest("compiler/testData/codegen/box/statics/anonymousInitializerIObject.kt"); + } + + @TestMetadata("anonymousInitializerInClassObject.kt") + public void testAnonymousInitializerInClassObject() throws Exception { + runTest("compiler/testData/codegen/box/statics/anonymousInitializerInClassObject.kt"); + } + + @TestMetadata("fields.kt") + public void testFields() throws Exception { + runTest("compiler/testData/codegen/box/statics/fields.kt"); + } + + @TestMetadata("functions.kt") + public void testFunctions() throws Exception { + runTest("compiler/testData/codegen/box/statics/functions.kt"); + } + + @TestMetadata("hidePrivateByPublic.kt") + public void testHidePrivateByPublic() throws Exception { + runTest("compiler/testData/codegen/box/statics/hidePrivateByPublic.kt"); + } + + @TestMetadata("incInClassObject.kt") + public void testIncInClassObject() throws Exception { + runTest("compiler/testData/codegen/box/statics/incInClassObject.kt"); + } + + @TestMetadata("incInObject.kt") + public void testIncInObject() throws Exception { + runTest("compiler/testData/codegen/box/statics/incInObject.kt"); + } + + @TestMetadata("inheritedPropertyInClassObject.kt") + public void testInheritedPropertyInClassObject() throws Exception { + runTest("compiler/testData/codegen/box/statics/inheritedPropertyInClassObject.kt"); + } + + @TestMetadata("inheritedPropertyInObject.kt") + public void testInheritedPropertyInObject() throws Exception { + runTest("compiler/testData/codegen/box/statics/inheritedPropertyInObject.kt"); + } + + @TestMetadata("inlineCallsStaticMethod.kt") + public void testInlineCallsStaticMethod() throws Exception { + runTest("compiler/testData/codegen/box/statics/inlineCallsStaticMethod.kt"); + } + + @TestMetadata("kt8089.kt") + public void testKt8089() throws Exception { + runTest("compiler/testData/codegen/box/statics/kt8089.kt"); + } + + @TestMetadata("protectedSamConstructor.kt") + public void testProtectedSamConstructor() throws Exception { + runTest("compiler/testData/codegen/box/statics/protectedSamConstructor.kt"); + } + + @TestMetadata("protectedStatic.kt") + public void testProtectedStatic() throws Exception { + runTest("compiler/testData/codegen/box/statics/protectedStatic.kt"); + } + + @TestMetadata("protectedStatic2.kt") + public void testProtectedStatic2() throws Exception { + runTest("compiler/testData/codegen/box/statics/protectedStatic2.kt"); + } + + @TestMetadata("protectedStaticAndInline.kt") + public void testProtectedStaticAndInline() throws Exception { + runTest("compiler/testData/codegen/box/statics/protectedStaticAndInline.kt"); + } + + @TestMetadata("syntheticAccessor.kt") + public void testSyntheticAccessor() throws Exception { + runTest("compiler/testData/codegen/box/statics/syntheticAccessor.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/storeStackBeforeInline") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class StoreStackBeforeInline extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInStoreStackBeforeInline() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/storeStackBeforeInline"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("differentTypes.kt") + public void testDifferentTypes() throws Exception { + runTest("compiler/testData/codegen/box/storeStackBeforeInline/differentTypes.kt"); + } + + @TestMetadata("primitiveMerge.kt") + public void testPrimitiveMerge() throws Exception { + runTest("compiler/testData/codegen/box/storeStackBeforeInline/primitiveMerge.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/storeStackBeforeInline/simple.kt"); + } + + @TestMetadata("unreachableMarker.kt") + public void testUnreachableMarker() throws Exception { + runTest("compiler/testData/codegen/box/storeStackBeforeInline/unreachableMarker.kt"); + } + + @TestMetadata("withLambda.kt") + public void testWithLambda() throws Exception { + runTest("compiler/testData/codegen/box/storeStackBeforeInline/withLambda.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/strings") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Strings extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInStrings() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/strings"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("constInStringTemplate.kt") + public void testConstInStringTemplate() throws Exception { + runTest("compiler/testData/codegen/box/strings/constInStringTemplate.kt"); + } + + @TestMetadata("ea35743.kt") + public void testEa35743() throws Exception { + runTest("compiler/testData/codegen/box/strings/ea35743.kt"); + } + + @TestMetadata("forInString.kt") + public void testForInString() throws Exception { + runTest("compiler/testData/codegen/box/strings/forInString.kt"); + } + + @TestMetadata("interpolation.kt") + public void testInterpolation() throws Exception { + runTest("compiler/testData/codegen/box/strings/interpolation.kt"); + } + + @TestMetadata("kt2592.kt") + public void testKt2592() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt2592.kt"); + } + + @TestMetadata("kt3571.kt") + public void testKt3571() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt3571.kt"); + } + + @TestMetadata("kt3652.kt") + public void testKt3652() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt3652.kt"); + } + + @TestMetadata("kt5389_stringBuilderGet.kt") + public void testKt5389_stringBuilderGet() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt5389_stringBuilderGet.kt"); + } + + @TestMetadata("kt5956.kt") + public void testKt5956() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt5956.kt"); + } + + @TestMetadata("kt881.kt") + public void testKt881() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt881.kt"); + } + + @TestMetadata("kt889.kt") + public void testKt889() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt889.kt"); + } + + @TestMetadata("kt894.kt") + public void testKt894() throws Exception { + runTest("compiler/testData/codegen/box/strings/kt894.kt"); + } + + @TestMetadata("multilineStringsWithTemplates.kt") + public void testMultilineStringsWithTemplates() throws Exception { + runTest("compiler/testData/codegen/box/strings/multilineStringsWithTemplates.kt"); + } + + @TestMetadata("nestedConcat.kt") + public void testNestedConcat() throws Exception { + runTest("compiler/testData/codegen/box/strings/nestedConcat.kt"); + } + + @TestMetadata("rawStrings.kt") + public void testRawStrings() throws Exception { + runTest("compiler/testData/codegen/box/strings/rawStrings.kt"); + } + + @TestMetadata("rawStringsWithManyQuotes.kt") + public void testRawStringsWithManyQuotes() throws Exception { + runTest("compiler/testData/codegen/box/strings/rawStringsWithManyQuotes.kt"); + } + + @TestMetadata("stringBuilderAppend.kt") + public void testStringBuilderAppend() throws Exception { + runTest("compiler/testData/codegen/box/strings/stringBuilderAppend.kt"); + } + + @TestMetadata("stringPlusOnlyWorksOnString.kt") + public void testStringPlusOnlyWorksOnString() throws Exception { + runTest("compiler/testData/codegen/box/strings/stringPlusOnlyWorksOnString.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/super") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Super extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSuper() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/super"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("basicmethodSuperClass.kt") + public void testBasicmethodSuperClass() throws Exception { + runTest("compiler/testData/codegen/box/super/basicmethodSuperClass.kt"); + } + + @TestMetadata("basicmethodSuperTrait.kt") + public void testBasicmethodSuperTrait() throws Exception { + runTest("compiler/testData/codegen/box/super/basicmethodSuperTrait.kt"); + } + + @TestMetadata("basicproperty.kt") + public void testBasicproperty() throws Exception { + runTest("compiler/testData/codegen/box/super/basicproperty.kt"); + } + + @TestMetadata("enclosedFun.kt") + public void testEnclosedFun() throws Exception { + runTest("compiler/testData/codegen/box/super/enclosedFun.kt"); + } + + @TestMetadata("enclosedVar.kt") + public void testEnclosedVar() throws Exception { + runTest("compiler/testData/codegen/box/super/enclosedVar.kt"); + } + + @TestMetadata("innerClassLabeledSuper.kt") + public void testInnerClassLabeledSuper() throws Exception { + runTest("compiler/testData/codegen/box/super/innerClassLabeledSuper.kt"); + } + + @TestMetadata("innerClassLabeledSuper2.kt") + public void testInnerClassLabeledSuper2() throws Exception { + runTest("compiler/testData/codegen/box/super/innerClassLabeledSuper2.kt"); + } + + @TestMetadata("innerClassLabeledSuperProperty.kt") + public void testInnerClassLabeledSuperProperty() throws Exception { + runTest("compiler/testData/codegen/box/super/innerClassLabeledSuperProperty.kt"); + } + + @TestMetadata("innerClassLabeledSuperProperty2.kt") + public void testInnerClassLabeledSuperProperty2() throws Exception { + runTest("compiler/testData/codegen/box/super/innerClassLabeledSuperProperty2.kt"); + } + + @TestMetadata("innerClassQualifiedFunctionCall.kt") + public void testInnerClassQualifiedFunctionCall() throws Exception { + runTest("compiler/testData/codegen/box/super/innerClassQualifiedFunctionCall.kt"); + } + + @TestMetadata("innerClassQualifiedPropertyAccess.kt") + public void testInnerClassQualifiedPropertyAccess() throws Exception { + runTest("compiler/testData/codegen/box/super/innerClassQualifiedPropertyAccess.kt"); + } + + @TestMetadata("kt14243.kt") + public void testKt14243() throws Exception { + runTest("compiler/testData/codegen/box/super/kt14243.kt"); + } + + @TestMetadata("kt14243_2.kt") + public void testKt14243_2() throws Exception { + runTest("compiler/testData/codegen/box/super/kt14243_2.kt"); + } + + @TestMetadata("kt14243_class.kt") + public void testKt14243_class() throws Exception { + runTest("compiler/testData/codegen/box/super/kt14243_class.kt"); + } + + @TestMetadata("kt14243_prop.kt") + public void testKt14243_prop() throws Exception { + runTest("compiler/testData/codegen/box/super/kt14243_prop.kt"); + } + + @TestMetadata("kt3492ClassFun.kt") + public void testKt3492ClassFun() throws Exception { + runTest("compiler/testData/codegen/box/super/kt3492ClassFun.kt"); + } + + @TestMetadata("kt3492ClassProperty.kt") + public void testKt3492ClassProperty() throws Exception { + runTest("compiler/testData/codegen/box/super/kt3492ClassProperty.kt"); + } + + @TestMetadata("kt3492TraitFun.kt") + public void testKt3492TraitFun() throws Exception { + runTest("compiler/testData/codegen/box/super/kt3492TraitFun.kt"); + } + + @TestMetadata("kt3492TraitProperty.kt") + public void testKt3492TraitProperty() throws Exception { + runTest("compiler/testData/codegen/box/super/kt3492TraitProperty.kt"); + } + + @TestMetadata("kt4173.kt") + public void testKt4173() throws Exception { + runTest("compiler/testData/codegen/box/super/kt4173.kt"); + } + + @TestMetadata("kt4173_2.kt") + public void testKt4173_2() throws Exception { + runTest("compiler/testData/codegen/box/super/kt4173_2.kt"); + } + + @TestMetadata("kt4173_3.kt") + public void testKt4173_3() throws Exception { + runTest("compiler/testData/codegen/box/super/kt4173_3.kt"); + } + + @TestMetadata("kt4982.kt") + public void testKt4982() throws Exception { + runTest("compiler/testData/codegen/box/super/kt4982.kt"); + } + + @TestMetadata("multipleSuperTraits.kt") + public void testMultipleSuperTraits() throws Exception { + runTest("compiler/testData/codegen/box/super/multipleSuperTraits.kt"); + } + + @TestMetadata("traitproperty.kt") + public void testTraitproperty() throws Exception { + runTest("compiler/testData/codegen/box/super/traitproperty.kt"); + } + + @TestMetadata("unqualifiedSuper.kt") + public void testUnqualifiedSuper() throws Exception { + runTest("compiler/testData/codegen/box/super/unqualifiedSuper.kt"); + } + + @TestMetadata("unqualifiedSuperWithDeeperHierarchies.kt") + public void testUnqualifiedSuperWithDeeperHierarchies() throws Exception { + runTest("compiler/testData/codegen/box/super/unqualifiedSuperWithDeeperHierarchies.kt"); + } + + @TestMetadata("unqualifiedSuperWithMethodsOfAny.kt") + public void testUnqualifiedSuperWithMethodsOfAny() throws Exception { + runTest("compiler/testData/codegen/box/super/unqualifiedSuperWithMethodsOfAny.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/super/superConstructor") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SuperConstructor extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSuperConstructor() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/super/superConstructor"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt17464_arrayOf.kt") + public void testKt17464_arrayOf() throws Exception { + runTest("compiler/testData/codegen/box/super/superConstructor/kt17464_arrayOf.kt"); + } + + @TestMetadata("kt17464_linkedMapOf.kt") + public void testKt17464_linkedMapOf() throws Exception { + runTest("compiler/testData/codegen/box/super/superConstructor/kt17464_linkedMapOf.kt"); + } + + @TestMetadata("kt18356.kt") + public void testKt18356() throws Exception { + runTest("compiler/testData/codegen/box/super/superConstructor/kt18356.kt"); + } + + @TestMetadata("kt18356_2.kt") + public void testKt18356_2() throws Exception { + runTest("compiler/testData/codegen/box/super/superConstructor/kt18356_2.kt"); + } + + @TestMetadata("objectExtendsInner.kt") + public void testObjectExtendsInner() throws Exception { + runTest("compiler/testData/codegen/box/super/superConstructor/objectExtendsInner.kt"); + } + + @TestMetadata("objectExtendsLocalInner.kt") + public void testObjectExtendsLocalInner() throws Exception { + runTest("compiler/testData/codegen/box/super/superConstructor/objectExtendsLocalInner.kt"); + } + } + } + + @TestMetadata("compiler/testData/codegen/box/synchronized") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Synchronized extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInSynchronized() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/synchronized"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("changeMonitor.kt") + public void testChangeMonitor() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/changeMonitor.kt"); + } + + @TestMetadata("exceptionInMonitorExpression.kt") + public void testExceptionInMonitorExpression() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/exceptionInMonitorExpression.kt"); + } + + @TestMetadata("finally.kt") + public void testFinally() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/finally.kt"); + } + + @TestMetadata("longValue.kt") + public void testLongValue() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/longValue.kt"); + } + + @TestMetadata("nestedDifferentObjects.kt") + public void testNestedDifferentObjects() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/nestedDifferentObjects.kt"); + } + + @TestMetadata("nestedSameObject.kt") + public void testNestedSameObject() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/nestedSameObject.kt"); + } + + @TestMetadata("nonLocalReturn.kt") + public void testNonLocalReturn() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/nonLocalReturn.kt"); + } + + @TestMetadata("objectValue.kt") + public void testObjectValue() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/objectValue.kt"); + } + + @TestMetadata("sync.kt") + public void testSync() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/sync.kt"); + } + + @TestMetadata("value.kt") + public void testValue() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/value.kt"); + } + + @TestMetadata("wait.kt") + public void testWait() throws Exception { + runTest("compiler/testData/codegen/box/synchronized/wait.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/syntheticAccessors") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class SyntheticAccessors extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("accessorForGenericConstructor.kt") + public void testAccessorForGenericConstructor() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/accessorForGenericConstructor.kt"); + } + + @TestMetadata("accessorForGenericMethod.kt") + public void testAccessorForGenericMethod() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/accessorForGenericMethod.kt"); + } + + @TestMetadata("accessorForGenericMethodWithDefaults.kt") + public void testAccessorForGenericMethodWithDefaults() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/accessorForGenericMethodWithDefaults.kt"); + } + + @TestMetadata("accessorForProtected.kt") + public void testAccessorForProtected() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/accessorForProtected.kt"); + } + + @TestMetadata("accessorForProtectedInvokeVirtual.kt") + public void testAccessorForProtectedInvokeVirtual() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/accessorForProtectedInvokeVirtual.kt"); + } + + public void testAllFilesPresentInSyntheticAccessors() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/syntheticAccessors"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("jvmNameForAccessors.kt") + public void testJvmNameForAccessors() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/jvmNameForAccessors.kt"); + } + + @TestMetadata("kt10047.kt") + public void testKt10047() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt10047.kt"); + } + + @TestMetadata("kt21258_indirect.kt") + public void testKt21258_indirect() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt21258_indirect.kt"); + } + + @TestMetadata("kt21258_simple.kt") + public void testKt21258_simple() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt21258_simple.kt"); + } + + @TestMetadata("kt9717.kt") + public void testKt9717() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt9717.kt"); + } + + @TestMetadata("kt9717DifferentPackages.kt") + public void testKt9717DifferentPackages() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt9717DifferentPackages.kt"); + } + + @TestMetadata("kt9958.kt") + public void testKt9958() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt9958.kt"); + } + + @TestMetadata("kt9958Interface.kt") + public void testKt9958Interface() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/kt9958Interface.kt"); + } + + @TestMetadata("protectedFromLambda.kt") + public void testProtectedFromLambda() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/protectedFromLambda.kt"); + } + + @TestMetadata("syntheticAccessorNames.kt") + public void testSyntheticAccessorNames() throws Exception { + runTest("compiler/testData/codegen/box/syntheticAccessors/syntheticAccessorNames.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/toArray") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ToArray extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInToArray() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/toArray"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt3177-toTypedArray.kt") + public void testKt3177_toTypedArray() throws Exception { + runTest("compiler/testData/codegen/box/toArray/kt3177-toTypedArray.kt"); + } + + @TestMetadata("returnToTypedArray.kt") + public void testReturnToTypedArray() throws Exception { + runTest("compiler/testData/codegen/box/toArray/returnToTypedArray.kt"); + } + + @TestMetadata("toTypedArray.kt") + public void testToTypedArray() throws Exception { + runTest("compiler/testData/codegen/box/toArray/toTypedArray.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/topLevelPrivate") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TopLevelPrivate extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTopLevelPrivate() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/topLevelPrivate"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("noPrivateNoAccessorsInMultiFileFacade.kt") + public void testNoPrivateNoAccessorsInMultiFileFacade() throws Exception { + runTest("compiler/testData/codegen/box/topLevelPrivate/noPrivateNoAccessorsInMultiFileFacade.kt"); + } + + @TestMetadata("noPrivateNoAccessorsInMultiFileFacade2.kt") + public void testNoPrivateNoAccessorsInMultiFileFacade2() throws Exception { + runTest("compiler/testData/codegen/box/topLevelPrivate/noPrivateNoAccessorsInMultiFileFacade2.kt"); + } + + @TestMetadata("privateInInlineNested.kt") + public void testPrivateInInlineNested() throws Exception { + runTest("compiler/testData/codegen/box/topLevelPrivate/privateInInlineNested.kt"); + } + + @TestMetadata("privateVisibility.kt") + public void testPrivateVisibility() throws Exception { + runTest("compiler/testData/codegen/box/topLevelPrivate/privateVisibility.kt"); + } + + @TestMetadata("syntheticAccessor.kt") + public void testSyntheticAccessor() throws Exception { + runTest("compiler/testData/codegen/box/topLevelPrivate/syntheticAccessor.kt"); + } + + @TestMetadata("syntheticAccessorInMultiFile.kt") + public void testSyntheticAccessorInMultiFile() throws Exception { + runTest("compiler/testData/codegen/box/topLevelPrivate/syntheticAccessorInMultiFile.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/traits") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Traits extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + @TestMetadata("abstractClassInheritsFromInterface.kt") + public void testAbstractClassInheritsFromInterface() throws Exception { + runTest("compiler/testData/codegen/box/traits/abstractClassInheritsFromInterface.kt"); + } + + public void testAllFilesPresentInTraits() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/traits"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("diamondPropertyAccessors.kt") + public void testDiamondPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/box/traits/diamondPropertyAccessors.kt"); + } + + @TestMetadata("genericMethod.kt") + public void testGenericMethod() throws Exception { + runTest("compiler/testData/codegen/box/traits/genericMethod.kt"); + } + + @TestMetadata("indirectlyInheritPropertyGetter.kt") + public void testIndirectlyInheritPropertyGetter() throws Exception { + runTest("compiler/testData/codegen/box/traits/indirectlyInheritPropertyGetter.kt"); + } + + @TestMetadata("inheritJavaInterface.kt") + public void testInheritJavaInterface() throws Exception { + runTest("compiler/testData/codegen/box/traits/inheritJavaInterface.kt"); + } + + @TestMetadata("inheritedFun.kt") + public void testInheritedFun() throws Exception { + runTest("compiler/testData/codegen/box/traits/inheritedFun.kt"); + } + + @TestMetadata("inheritedVar.kt") + public void testInheritedVar() throws Exception { + runTest("compiler/testData/codegen/box/traits/inheritedVar.kt"); + } + + @TestMetadata("interfaceDefaultImpls.kt") + public void testInterfaceDefaultImpls() throws Exception { + runTest("compiler/testData/codegen/box/traits/interfaceDefaultImpls.kt"); + } + + @TestMetadata("interfaceWithNonAbstractFunIndirect.kt") + public void testInterfaceWithNonAbstractFunIndirect() throws Exception { + runTest("compiler/testData/codegen/box/traits/interfaceWithNonAbstractFunIndirect.kt"); + } + + @TestMetadata("interfaceWithNonAbstractFunIndirectGeneric.kt") + public void testInterfaceWithNonAbstractFunIndirectGeneric() throws Exception { + runTest("compiler/testData/codegen/box/traits/interfaceWithNonAbstractFunIndirectGeneric.kt"); + } + + @TestMetadata("kt1936.kt") + public void testKt1936() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt1936.kt"); + } + + @TestMetadata("kt1936_1.kt") + public void testKt1936_1() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt1936_1.kt"); + } + + @TestMetadata("kt2260.kt") + public void testKt2260() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt2260.kt"); + } + + @TestMetadata("kt2399.kt") + public void testKt2399() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt2399.kt"); + } + + @TestMetadata("kt2541.kt") + public void testKt2541() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt2541.kt"); + } + + @TestMetadata("kt3315.kt") + public void testKt3315() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt3315.kt"); + } + + @TestMetadata("kt3500.kt") + public void testKt3500() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt3500.kt"); + } + + @TestMetadata("kt3579.kt") + public void testKt3579() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt3579.kt"); + } + + @TestMetadata("kt3579_2.kt") + public void testKt3579_2() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt3579_2.kt"); + } + + @TestMetadata("kt5393.kt") + public void testKt5393() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt5393.kt"); + } + + @TestMetadata("kt5393_property.kt") + public void testKt5393_property() throws Exception { + runTest("compiler/testData/codegen/box/traits/kt5393_property.kt"); + } + + @TestMetadata("multiple.kt") + public void testMultiple() throws Exception { + runTest("compiler/testData/codegen/box/traits/multiple.kt"); + } + + @TestMetadata("noPrivateDelegation.kt") + public void testNoPrivateDelegation() throws Exception { + runTest("compiler/testData/codegen/box/traits/noPrivateDelegation.kt"); + } + + @TestMetadata("syntheticAccessor.kt") + public void testSyntheticAccessor() throws Exception { + runTest("compiler/testData/codegen/box/traits/syntheticAccessor.kt"); + } + + @TestMetadata("traitImplDelegationWithCovariantOverride.kt") + public void testTraitImplDelegationWithCovariantOverride() throws Exception { + runTest("compiler/testData/codegen/box/traits/traitImplDelegationWithCovariantOverride.kt"); + } + + @TestMetadata("traitImplDiamond.kt") + public void testTraitImplDiamond() throws Exception { + runTest("compiler/testData/codegen/box/traits/traitImplDiamond.kt"); + } + + @TestMetadata("traitImplGenericDelegation.kt") + public void testTraitImplGenericDelegation() throws Exception { + runTest("compiler/testData/codegen/box/traits/traitImplGenericDelegation.kt"); + } + + @TestMetadata("traitWithPrivateExtension.kt") + public void testTraitWithPrivateExtension() throws Exception { + runTest("compiler/testData/codegen/box/traits/traitWithPrivateExtension.kt"); + } + + @TestMetadata("traitWithPrivateMember.kt") + public void testTraitWithPrivateMember() throws Exception { + runTest("compiler/testData/codegen/box/traits/traitWithPrivateMember.kt"); + } + + @TestMetadata("traitWithPrivateMemberAccessFromLambda.kt") + public void testTraitWithPrivateMemberAccessFromLambda() throws Exception { + runTest("compiler/testData/codegen/box/traits/traitWithPrivateMemberAccessFromLambda.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/typeInfo") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TypeInfo extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTypeInfo() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/typeInfo"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("asInLoop.kt") + public void testAsInLoop() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/asInLoop.kt"); + } + + @TestMetadata("ifOrWhenSpecialCall.kt") + public void testIfOrWhenSpecialCall() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/ifOrWhenSpecialCall.kt"); + } + + @TestMetadata("implicitSmartCastThis.kt") + public void testImplicitSmartCastThis() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/implicitSmartCastThis.kt"); + } + + @TestMetadata("inheritance.kt") + public void testInheritance() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/inheritance.kt"); + } + + @TestMetadata("kt2811.kt") + public void testKt2811() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/kt2811.kt"); + } + + @TestMetadata("primitiveTypeInfo.kt") + public void testPrimitiveTypeInfo() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/primitiveTypeInfo.kt"); + } + + @TestMetadata("smartCastThis.kt") + public void testSmartCastThis() throws Exception { + runTest("compiler/testData/codegen/box/typeInfo/smartCastThis.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/typeMapping") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TypeMapping extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTypeMapping() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/typeMapping"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("enhancedPrimitives.kt") + public void testEnhancedPrimitives() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/enhancedPrimitives.kt"); + } + + @TestMetadata("genericTypeWithNothing.kt") + public void testGenericTypeWithNothing() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/genericTypeWithNothing.kt"); + } + + @TestMetadata("kt2831.kt") + public void testKt2831() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/kt2831.kt"); + } + + @TestMetadata("kt309.kt") + public void testKt309() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/kt309.kt"); + } + + @TestMetadata("kt3286.kt") + public void testKt3286() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/kt3286.kt"); + } + + @TestMetadata("kt3863.kt") + public void testKt3863() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/kt3863.kt"); + } + + @TestMetadata("kt3976.kt") + public void testKt3976() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/kt3976.kt"); + } + + @TestMetadata("nothing.kt") + public void testNothing() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/nothing.kt"); + } + + @TestMetadata("nullableNothing.kt") + public void testNullableNothing() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/nullableNothing.kt"); + } + + @TestMetadata("typeParameterMultipleBounds.kt") + public void testTypeParameterMultipleBounds() throws Exception { + runTest("compiler/testData/codegen/box/typeMapping/typeParameterMultipleBounds.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/typealias") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Typealias extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTypealias() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/typealias"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("enumEntryQualifier.kt") + public void testEnumEntryQualifier() throws Exception { + runTest("compiler/testData/codegen/box/typealias/enumEntryQualifier.kt"); + } + + @TestMetadata("genericTypeAliasConstructor.kt") + public void testGenericTypeAliasConstructor() throws Exception { + runTest("compiler/testData/codegen/box/typealias/genericTypeAliasConstructor.kt"); + } + + @TestMetadata("genericTypeAliasConstructor2.kt") + public void testGenericTypeAliasConstructor2() throws Exception { + runTest("compiler/testData/codegen/box/typealias/genericTypeAliasConstructor2.kt"); + } + + @TestMetadata("innerClassTypeAliasConstructor.kt") + public void testInnerClassTypeAliasConstructor() throws Exception { + runTest("compiler/testData/codegen/box/typealias/innerClassTypeAliasConstructor.kt"); + } + + @TestMetadata("innerClassTypeAliasConstructorInSupertypes.kt") + public void testInnerClassTypeAliasConstructorInSupertypes() throws Exception { + runTest("compiler/testData/codegen/box/typealias/innerClassTypeAliasConstructorInSupertypes.kt"); + } + + @TestMetadata("kt15109.kt") + public void testKt15109() throws Exception { + runTest("compiler/testData/codegen/box/typealias/kt15109.kt"); + } + + @TestMetadata("objectLiteralConstructor.kt") + public void testObjectLiteralConstructor() throws Exception { + runTest("compiler/testData/codegen/box/typealias/objectLiteralConstructor.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/box/typealias/simple.kt"); + } + + @TestMetadata("typeAliasAsBareType.kt") + public void testTypeAliasAsBareType() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasAsBareType.kt"); + } + + @TestMetadata("typeAliasCompanion.kt") + public void testTypeAliasCompanion() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasCompanion.kt"); + } + + @TestMetadata("typeAliasConstructor.kt") + public void testTypeAliasConstructor() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasConstructor.kt"); + } + + @TestMetadata("typeAliasConstructorAccessor.kt") + public void testTypeAliasConstructorAccessor() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasConstructorAccessor.kt"); + } + + @TestMetadata("typeAliasConstructorForArray.kt") + public void testTypeAliasConstructorForArray() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasConstructorForArray.kt"); + } + + @TestMetadata("typeAliasConstructorInSuperCall.kt") + public void testTypeAliasConstructorInSuperCall() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasConstructorInSuperCall.kt"); + } + + @TestMetadata("typeAliasInAnonymousObjectType.kt") + public void testTypeAliasInAnonymousObjectType() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasInAnonymousObjectType.kt"); + } + + @TestMetadata("typeAliasObject.kt") + public void testTypeAliasObject() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasObject.kt"); + } + + @TestMetadata("typeAliasObjectCallable.kt") + public void testTypeAliasObjectCallable() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasObjectCallable.kt"); + } + + @TestMetadata("typeAliasSecondaryConstructor.kt") + public void testTypeAliasSecondaryConstructor() throws Exception { + runTest("compiler/testData/codegen/box/typealias/typeAliasSecondaryConstructor.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/unaryOp") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class UnaryOp extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInUnaryOp() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/unaryOp"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("call.kt") + public void testCall() throws Exception { + runTest("compiler/testData/codegen/box/unaryOp/call.kt"); + } + + @TestMetadata("callNullable.kt") + public void testCallNullable() throws Exception { + runTest("compiler/testData/codegen/box/unaryOp/callNullable.kt"); + } + + @TestMetadata("callWithCommonType.kt") + public void testCallWithCommonType() throws Exception { + runTest("compiler/testData/codegen/box/unaryOp/callWithCommonType.kt"); + } + + @TestMetadata("intrinsic.kt") + public void testIntrinsic() throws Exception { + runTest("compiler/testData/codegen/box/unaryOp/intrinsic.kt"); + } + + @TestMetadata("intrinsicNullable.kt") + public void testIntrinsicNullable() throws Exception { + runTest("compiler/testData/codegen/box/unaryOp/intrinsicNullable.kt"); + } + + @TestMetadata("longOverflow.kt") + public void testLongOverflow() throws Exception { + runTest("compiler/testData/codegen/box/unaryOp/longOverflow.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/unit") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Unit extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInUnit() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/unit"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("closureReturnsNullableUnit.kt") + public void testClosureReturnsNullableUnit() throws Exception { + runTest("compiler/testData/codegen/box/unit/closureReturnsNullableUnit.kt"); + } + + @TestMetadata("ifElse.kt") + public void testIfElse() throws Exception { + runTest("compiler/testData/codegen/box/unit/ifElse.kt"); + } + + @TestMetadata("kt3634.kt") + public void testKt3634() throws Exception { + runTest("compiler/testData/codegen/box/unit/kt3634.kt"); + } + + @TestMetadata("kt4212.kt") + public void testKt4212() throws Exception { + runTest("compiler/testData/codegen/box/unit/kt4212.kt"); + } + + @TestMetadata("kt4265.kt") + public void testKt4265() throws Exception { + runTest("compiler/testData/codegen/box/unit/kt4265.kt"); + } + + @TestMetadata("nullableUnit.kt") + public void testNullableUnit() throws Exception { + runTest("compiler/testData/codegen/box/unit/nullableUnit.kt"); + } + + @TestMetadata("nullableUnitInWhen1.kt") + public void testNullableUnitInWhen1() throws Exception { + runTest("compiler/testData/codegen/box/unit/nullableUnitInWhen1.kt"); + } + + @TestMetadata("nullableUnitInWhen2.kt") + public void testNullableUnitInWhen2() throws Exception { + runTest("compiler/testData/codegen/box/unit/nullableUnitInWhen2.kt"); + } + + @TestMetadata("nullableUnitInWhen3.kt") + public void testNullableUnitInWhen3() throws Exception { + runTest("compiler/testData/codegen/box/unit/nullableUnitInWhen3.kt"); + } + + @TestMetadata("unitClassObject.kt") + public void testUnitClassObject() throws Exception { + runTest("compiler/testData/codegen/box/unit/unitClassObject.kt"); + } + + @TestMetadata("UnitValue.kt") + public void testUnitValue() throws Exception { + runTest("compiler/testData/codegen/box/unit/UnitValue.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/unsignedTypes") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class UnsignedTypes extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInUnsignedTypes() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/unsignedTypes"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + } + + @TestMetadata("compiler/testData/codegen/box/vararg") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Vararg extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInVararg() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/vararg"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("assigningArrayToVarargInAnnotation.kt") + public void testAssigningArrayToVarargInAnnotation() throws Exception { + runTest("compiler/testData/codegen/box/vararg/assigningArrayToVarargInAnnotation.kt"); + } + + @TestMetadata("doNotCopyImmediatelyCreatedArrays.kt") + public void testDoNotCopyImmediatelyCreatedArrays() throws Exception { + runTest("compiler/testData/codegen/box/vararg/doNotCopyImmediatelyCreatedArrays.kt"); + } + + @TestMetadata("kt1978.kt") + public void testKt1978() throws Exception { + runTest("compiler/testData/codegen/box/vararg/kt1978.kt"); + } + + @TestMetadata("kt581.kt") + public void testKt581() throws Exception { + runTest("compiler/testData/codegen/box/vararg/kt581.kt"); + } + + @TestMetadata("kt6192.kt") + public void testKt6192() throws Exception { + runTest("compiler/testData/codegen/box/vararg/kt6192.kt"); + } + + @TestMetadata("kt796_797.kt") + public void testKt796_797() throws Exception { + runTest("compiler/testData/codegen/box/vararg/kt796_797.kt"); + } + + @TestMetadata("spreadCopiesArray.kt") + public void testSpreadCopiesArray() throws Exception { + runTest("compiler/testData/codegen/box/vararg/spreadCopiesArray.kt"); + } + + @TestMetadata("varargInFunParam.kt") + public void testVarargInFunParam() throws Exception { + runTest("compiler/testData/codegen/box/vararg/varargInFunParam.kt"); + } + + @TestMetadata("varargInJava.kt") + public void testVarargInJava() throws Exception { + runTest("compiler/testData/codegen/box/vararg/varargInJava.kt"); + } + + @TestMetadata("varargsAndFunctionLiterals.kt") + public void testVarargsAndFunctionLiterals() throws Exception { + runTest("compiler/testData/codegen/box/vararg/varargsAndFunctionLiterals.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/when") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class When extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInWhen() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/when"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callProperty.kt") + public void testCallProperty() throws Exception { + runTest("compiler/testData/codegen/box/when/callProperty.kt"); + } + + @TestMetadata("emptyWhen.kt") + public void testEmptyWhen() throws Exception { + runTest("compiler/testData/codegen/box/when/emptyWhen.kt"); + } + + @TestMetadata("exceptionOnNoMatch.kt") + public void testExceptionOnNoMatch() throws Exception { + runTest("compiler/testData/codegen/box/when/exceptionOnNoMatch.kt"); + } + + @TestMetadata("exhaustiveBoolean.kt") + public void testExhaustiveBoolean() throws Exception { + runTest("compiler/testData/codegen/box/when/exhaustiveBoolean.kt"); + } + + @TestMetadata("exhaustiveBreakContinue.kt") + public void testExhaustiveBreakContinue() throws Exception { + runTest("compiler/testData/codegen/box/when/exhaustiveBreakContinue.kt"); + } + + @TestMetadata("exhaustiveWhenInitialization.kt") + public void testExhaustiveWhenInitialization() throws Exception { + runTest("compiler/testData/codegen/box/when/exhaustiveWhenInitialization.kt"); + } + + @TestMetadata("exhaustiveWhenReturn.kt") + public void testExhaustiveWhenReturn() throws Exception { + runTest("compiler/testData/codegen/box/when/exhaustiveWhenReturn.kt"); + } + + @TestMetadata("implicitExhaustiveAndReturn.kt") + public void testImplicitExhaustiveAndReturn() throws Exception { + runTest("compiler/testData/codegen/box/when/implicitExhaustiveAndReturn.kt"); + } + + @TestMetadata("integralWhenWithNoInlinedConstants.kt") + public void testIntegralWhenWithNoInlinedConstants() throws Exception { + runTest("compiler/testData/codegen/box/when/integralWhenWithNoInlinedConstants.kt"); + } + + @TestMetadata("is.kt") + public void testIs() throws Exception { + runTest("compiler/testData/codegen/box/when/is.kt"); + } + + @TestMetadata("kt2457.kt") + public void testKt2457() throws Exception { + runTest("compiler/testData/codegen/box/when/kt2457.kt"); + } + + @TestMetadata("kt2466.kt") + public void testKt2466() throws Exception { + runTest("compiler/testData/codegen/box/when/kt2466.kt"); + } + + @TestMetadata("kt5307.kt") + public void testKt5307() throws Exception { + runTest("compiler/testData/codegen/box/when/kt5307.kt"); + } + + @TestMetadata("kt5448.kt") + public void testKt5448() throws Exception { + runTest("compiler/testData/codegen/box/when/kt5448.kt"); + } + + @TestMetadata("longInRange.kt") + public void testLongInRange() throws Exception { + runTest("compiler/testData/codegen/box/when/longInRange.kt"); + } + + @TestMetadata("matchNotNullAgainstNullable.kt") + public void testMatchNotNullAgainstNullable() throws Exception { + runTest("compiler/testData/codegen/box/when/matchNotNullAgainstNullable.kt"); + } + + @TestMetadata("multipleEntries.kt") + public void testMultipleEntries() throws Exception { + runTest("compiler/testData/codegen/box/when/multipleEntries.kt"); + } + + @TestMetadata("noElseExhaustive.kt") + public void testNoElseExhaustive() throws Exception { + runTest("compiler/testData/codegen/box/when/noElseExhaustive.kt"); + } + + @TestMetadata("noElseExhaustiveStatement.kt") + public void testNoElseExhaustiveStatement() throws Exception { + runTest("compiler/testData/codegen/box/when/noElseExhaustiveStatement.kt"); + } + + @TestMetadata("noElseExhaustiveUnitExpected.kt") + public void testNoElseExhaustiveUnitExpected() throws Exception { + runTest("compiler/testData/codegen/box/when/noElseExhaustiveUnitExpected.kt"); + } + + @TestMetadata("noElseInStatement.kt") + public void testNoElseInStatement() throws Exception { + runTest("compiler/testData/codegen/box/when/noElseInStatement.kt"); + } + + @TestMetadata("noElseNoMatch.kt") + public void testNoElseNoMatch() throws Exception { + runTest("compiler/testData/codegen/box/when/noElseNoMatch.kt"); + } + + @TestMetadata("nullableWhen.kt") + public void testNullableWhen() throws Exception { + runTest("compiler/testData/codegen/box/when/nullableWhen.kt"); + } + + @TestMetadata("range.kt") + public void testRange() throws Exception { + runTest("compiler/testData/codegen/box/when/range.kt"); + } + + @TestMetadata("sealedWhenInitialization.kt") + public void testSealedWhenInitialization() throws Exception { + runTest("compiler/testData/codegen/box/when/sealedWhenInitialization.kt"); + } + + @TestMetadata("switchOptimizationDense.kt") + public void testSwitchOptimizationDense() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationDense.kt"); + } + + @TestMetadata("switchOptimizationMultipleConditions.kt") + public void testSwitchOptimizationMultipleConditions() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationMultipleConditions.kt"); + } + + @TestMetadata("switchOptimizationSingleStatementCase.kt") + public void testSwitchOptimizationSingleStatementCase() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationSingleStatementCase.kt"); + } + + @TestMetadata("switchOptimizationSparse.kt") + public void testSwitchOptimizationSparse() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationSparse.kt"); + } + + @TestMetadata("switchOptimizationStatement.kt") + public void testSwitchOptimizationStatement() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationStatement.kt"); + } + + @TestMetadata("switchOptimizationTypes.kt") + public void testSwitchOptimizationTypes() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationTypes.kt"); + } + + @TestMetadata("switchOptimizationUnordered.kt") + public void testSwitchOptimizationUnordered() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationUnordered.kt"); + } + + @TestMetadata("switchOptimizationWithGap.kt") + public void testSwitchOptimizationWithGap() throws Exception { + runTest("compiler/testData/codegen/box/when/switchOptimizationWithGap.kt"); + } + + @TestMetadata("typeDisjunction.kt") + public void testTypeDisjunction() throws Exception { + runTest("compiler/testData/codegen/box/when/typeDisjunction.kt"); + } + + @TestMetadata("whenArgumentIsEvaluatedOnlyOnce.kt") + public void testWhenArgumentIsEvaluatedOnlyOnce() throws Exception { + runTest("compiler/testData/codegen/box/when/whenArgumentIsEvaluatedOnlyOnce.kt"); + } + + @TestMetadata("whenSafeCallSubjectEvaluatedOnce.kt") + public void testWhenSafeCallSubjectEvaluatedOnce() throws Exception { + runTest("compiler/testData/codegen/box/when/whenSafeCallSubjectEvaluatedOnce.kt"); + } + + @TestMetadata("compiler/testData/codegen/box/when/enumOptimization") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class EnumOptimization extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInEnumOptimization() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/when/enumOptimization"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("bigEnum.kt") + public void testBigEnum() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/bigEnum.kt"); + } + + @TestMetadata("duplicatingItems.kt") + public void testDuplicatingItems() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/duplicatingItems.kt"); + } + + @TestMetadata("enumInsideClassObject.kt") + public void testEnumInsideClassObject() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/enumInsideClassObject.kt"); + } + + @TestMetadata("expression.kt") + public void testExpression() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/expression.kt"); + } + + @TestMetadata("functionLiteralInTopLevel.kt") + public void testFunctionLiteralInTopLevel() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/functionLiteralInTopLevel.kt"); + } + + @TestMetadata("kt14597.kt") + public void testKt14597() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/kt14597.kt"); + } + + @TestMetadata("kt14597_full.kt") + public void testKt14597_full() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/kt14597_full.kt"); + } + + @TestMetadata("kt14802.kt") + public void testKt14802() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/kt14802.kt"); + } + + @TestMetadata("kt15806.kt") + public void testKt15806() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/kt15806.kt"); + } + + @TestMetadata("manyWhensWithinClass.kt") + public void testManyWhensWithinClass() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/manyWhensWithinClass.kt"); + } + + @TestMetadata("nonConstantEnum.kt") + public void testNonConstantEnum() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/nonConstantEnum.kt"); + } + + @TestMetadata("nullability.kt") + public void testNullability() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/nullability.kt"); + } + + @TestMetadata("nullableEnum.kt") + public void testNullableEnum() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/nullableEnum.kt"); + } + + @TestMetadata("subjectAny.kt") + public void testSubjectAny() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/subjectAny.kt"); + } + + @TestMetadata("withoutElse.kt") + public void testWithoutElse() throws Exception { + runTest("compiler/testData/codegen/box/when/enumOptimization/withoutElse.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/box/when/stringOptimization") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class StringOptimization extends AbstractIrJsCodegenBoxTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInStringOptimization() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/when/stringOptimization"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("duplicatingItems.kt") + public void testDuplicatingItems() throws Exception { + runTest("compiler/testData/codegen/box/when/stringOptimization/duplicatingItems.kt"); + } + + @TestMetadata("duplicatingItemsSameHashCode.kt") + public void testDuplicatingItemsSameHashCode() throws Exception { + runTest("compiler/testData/codegen/box/when/stringOptimization/duplicatingItemsSameHashCode.kt"); + } + + @TestMetadata("expression.kt") + public void testExpression() throws Exception { + runTest("compiler/testData/codegen/box/when/stringOptimization/expression.kt"); + } + + @TestMetadata("nullability.kt") + public void testNullability() throws Exception { + runTest("compiler/testData/codegen/box/when/stringOptimization/nullability.kt"); + } + + @TestMetadata("sameHashCode.kt") + public void testSameHashCode() throws Exception { + runTest("compiler/testData/codegen/box/when/stringOptimization/sameHashCode.kt"); + } + + @TestMetadata("statement.kt") + public void testStatement() throws Exception { + runTest("compiler/testData/codegen/box/when/stringOptimization/statement.kt"); + } + } + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNoInlineTestsGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNoInlineTestsGenerated.java new file mode 100644 index 00000000000..4ebf6eee21b --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNoInlineTestsGenerated.java @@ -0,0 +1,66 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/boxInline/noInline") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrNoInlineTestsGenerated extends AbstractIrNoInlineTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNoInline() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/noInline"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("extensionReceiver.kt") + public void testExtensionReceiver() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/extensionReceiver.kt"); + } + + @TestMetadata("lambdaAsGeneric.kt") + public void testLambdaAsGeneric() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/lambdaAsGeneric.kt"); + } + + @TestMetadata("lambdaAsNonFunction.kt") + public void testLambdaAsNonFunction() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/lambdaAsNonFunction.kt"); + } + + @TestMetadata("noInline.kt") + public void testNoInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/noInline.kt"); + } + + @TestMetadata("noInlineLambdaChain.kt") + public void testNoInlineLambdaChain() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/noInlineLambdaChain.kt"); + } + + @TestMetadata("noInlineLambdaChainWithCapturedInline.kt") + public void testNoInlineLambdaChainWithCapturedInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/noInlineLambdaChainWithCapturedInline.kt"); + } + + @TestMetadata("withoutInline.kt") + public void testWithoutInline() throws Exception { + runTest("compiler/testData/codegen/boxInline/noInline/withoutInline.kt"); + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNonLocalReturnsTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNonLocalReturnsTestGenerated.java new file mode 100644 index 00000000000..b1680989c15 --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrNonLocalReturnsTestGenerated.java @@ -0,0 +1,457 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrNonLocalReturnsTestGenerated extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInNonLocalReturns() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("explicitLocalReturn.kt") + public void testExplicitLocalReturn() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/explicitLocalReturn.kt"); + } + + @TestMetadata("justReturnInLambda.kt") + public void testJustReturnInLambda() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/justReturnInLambda.kt"); + } + + @TestMetadata("kt5199.kt") + public void testKt5199() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/kt5199.kt"); + } + + @TestMetadata("kt8948.kt") + public void testKt8948() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/kt8948.kt"); + } + + @TestMetadata("kt8948v2.kt") + public void testKt8948v2() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/kt8948v2.kt"); + } + + @TestMetadata("nestedNonLocals.kt") + public void testNestedNonLocals() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/nestedNonLocals.kt"); + } + + @TestMetadata("noInlineLocalReturn.kt") + public void testNoInlineLocalReturn() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/noInlineLocalReturn.kt"); + } + + @TestMetadata("nonLocalReturnFromOuterLambda.kt") + public void testNonLocalReturnFromOuterLambda() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/nonLocalReturnFromOuterLambda.kt"); + } + + @TestMetadata("propertyAccessors.kt") + public void testPropertyAccessors() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/propertyAccessors.kt"); + } + + @TestMetadata("returnFromFunctionExpr.kt") + public void testReturnFromFunctionExpr() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/returnFromFunctionExpr.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/simple.kt"); + } + + @TestMetadata("simpleFunctional.kt") + public void testSimpleFunctional() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/simpleFunctional.kt"); + } + + @TestMetadata("simpleVoid.kt") + public void testSimpleVoid() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/simpleVoid.kt"); + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/deparenthesize") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Deparenthesize extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDeparenthesize() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/deparenthesize"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("bracket.kt") + public void testBracket() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/deparenthesize/bracket.kt"); + } + + @TestMetadata("labeled.kt") + public void testLabeled() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/deparenthesize/labeled.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class TryFinally extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInTryFinally() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt20433.kt") + public void testKt20433() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/kt20433.kt"); + } + + @TestMetadata("kt20433_2.kt") + public void testKt20433_2() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/kt20433_2.kt"); + } + + @TestMetadata("kt20433_2_void.kt") + public void testKt20433_2_void() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/kt20433_2_void.kt"); + } + + @TestMetadata("kt20433_void.kt") + public void testKt20433_void() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/kt20433_void.kt"); + } + + @TestMetadata("kt6956.kt") + public void testKt6956() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/kt6956.kt"); + } + + @TestMetadata("kt7273.kt") + public void testKt7273() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/kt7273.kt"); + } + + @TestMetadata("nonLocalReturnFromCatchBlock.kt") + public void testNonLocalReturnFromCatchBlock() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnFromCatchBlock.kt"); + } + + @TestMetadata("nonLocalReturnFromOuterLambda.kt") + public void testNonLocalReturnFromOuterLambda() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnFromOuterLambda.kt"); + } + + @TestMetadata("nonLocalReturnToCatchBlock.kt") + public void testNonLocalReturnToCatchBlock() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnToCatchBlock.kt"); + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class CallSite extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInCallSite() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("callSite.kt") + public void testCallSite() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite/callSite.kt"); + } + + @TestMetadata("callSiteComplex.kt") + public void testCallSiteComplex() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite/callSiteComplex.kt"); + } + + @TestMetadata("exceptionTableSplit.kt") + public void testExceptionTableSplit() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite/exceptionTableSplit.kt"); + } + + @TestMetadata("exceptionTableSplitNoReturn.kt") + public void testExceptionTableSplitNoReturn() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite/exceptionTableSplitNoReturn.kt"); + } + + @TestMetadata("finallyInFinally.kt") + public void testFinallyInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite/finallyInFinally.kt"); + } + + @TestMetadata("wrongVarInterval.kt") + public void testWrongVarInterval() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/callSite/wrongVarInterval.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Chained extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInChained() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("finallyInFinally.kt") + public void testFinallyInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/finallyInFinally.kt"); + } + + @TestMetadata("finallyInFinally2.kt") + public void testFinallyInFinally2() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/finallyInFinally2.kt"); + } + + @TestMetadata("intReturn.kt") + public void testIntReturn() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/intReturn.kt"); + } + + @TestMetadata("intReturnComplex.kt") + public void testIntReturnComplex() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/intReturnComplex.kt"); + } + + @TestMetadata("intReturnComplex2.kt") + public void testIntReturnComplex2() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/intReturnComplex2.kt"); + } + + @TestMetadata("intReturnComplex3.kt") + public void testIntReturnComplex3() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/intReturnComplex3.kt"); + } + + @TestMetadata("intReturnComplex4.kt") + public void testIntReturnComplex4() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/intReturnComplex4.kt"); + } + + @TestMetadata("nestedLambda.kt") + public void testNestedLambda() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/chained/nestedLambda.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class DeclSite extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInDeclSite() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("complex.kt") + public void testComplex() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/complex.kt"); + } + + @TestMetadata("intReturn.kt") + public void testIntReturn() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/intReturn.kt"); + } + + @TestMetadata("intReturnComplex.kt") + public void testIntReturnComplex() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/intReturnComplex.kt"); + } + + @TestMetadata("longReturn.kt") + public void testLongReturn() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/longReturn.kt"); + } + + @TestMetadata("nested.kt") + public void testNested() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/nested.kt"); + } + + @TestMetadata("returnInFinally.kt") + public void testReturnInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/returnInFinally.kt"); + } + + @TestMetadata("returnInTry.kt") + public void testReturnInTry() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/returnInTry.kt"); + } + + @TestMetadata("returnInTryAndFinally.kt") + public void testReturnInTryAndFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/returnInTryAndFinally.kt"); + } + + @TestMetadata("severalInTry.kt") + public void testSeveralInTry() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/severalInTry.kt"); + } + + @TestMetadata("severalInTryComplex.kt") + public void testSeveralInTryComplex() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/severalInTryComplex.kt"); + } + + @TestMetadata("voidInlineFun.kt") + public void testVoidInlineFun() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/voidInlineFun.kt"); + } + + @TestMetadata("voidNonLocal.kt") + public void testVoidNonLocal() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/declSite/voidNonLocal.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ExceptionTable extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInExceptionTable() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("break.kt") + public void testBreak() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/break.kt"); + } + + @TestMetadata("continue.kt") + public void testContinue() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/continue.kt"); + } + + @TestMetadata("exceptionInFinally.kt") + public void testExceptionInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/exceptionInFinally.kt"); + } + + @TestMetadata("forInFinally.kt") + public void testForInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/forInFinally.kt"); + } + + @TestMetadata("innerAndExternal.kt") + public void testInnerAndExternal() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/innerAndExternal.kt"); + } + + @TestMetadata("innerAndExternalNested.kt") + public void testInnerAndExternalNested() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/innerAndExternalNested.kt"); + } + + @TestMetadata("innerAndExternalSimple.kt") + public void testInnerAndExternalSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/innerAndExternalSimple.kt"); + } + + @TestMetadata("nested.kt") + public void testNested() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/nested.kt"); + } + + @TestMetadata("nestedWithReturns.kt") + public void testNestedWithReturns() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/nestedWithReturns.kt"); + } + + @TestMetadata("nestedWithReturnsSimple.kt") + public void testNestedWithReturnsSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/nestedWithReturnsSimple.kt"); + } + + @TestMetadata("noFinally.kt") + public void testNoFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/noFinally.kt"); + } + + @TestMetadata("severalCatchClause.kt") + public void testSeveralCatchClause() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/severalCatchClause.kt"); + } + + @TestMetadata("simpleThrow.kt") + public void testSimpleThrow() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/simpleThrow.kt"); + } + + @TestMetadata("synchonized.kt") + public void testSynchonized() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/synchonized.kt"); + } + + @TestMetadata("throwInFinally.kt") + public void testThrowInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/throwInFinally.kt"); + } + + @TestMetadata("tryCatchInFinally.kt") + public void testTryCatchInFinally() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/exceptionTable/tryCatchInFinally.kt"); + } + } + + @TestMetadata("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/variables") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Variables extends AbstractIrNonLocalReturnsTest { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInVariables() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/variables"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("kt7792.kt") + public void testKt7792() throws Exception { + runTest("compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/variables/kt7792.kt"); + } + } + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrPropertyAccessorsInlineTestsGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrPropertyAccessorsInlineTestsGenerated.java new file mode 100644 index 00000000000..c5d224a9c4b --- /dev/null +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/IrPropertyAccessorsInlineTestsGenerated.java @@ -0,0 +1,86 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.js.test.semantics; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; +import org.jetbrains.kotlin.test.KotlinTestUtils; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.runner.RunWith; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("compiler/testData/codegen/boxInline/property") +@TestDataPath("$PROJECT_ROOT") +@RunWith(JUnit3RunnerWithInners.class) +public class IrPropertyAccessorsInlineTestsGenerated extends AbstractIrPropertyAccessorsInlineTests { + private void runTest(String testDataFilePath) throws Exception { + KotlinTestUtils.runTest0(this::doTest, TargetBackend.JS_IR, testDataFilePath); + } + + public void testAllFilesPresentInProperty() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxInline/property"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS_IR, true); + } + + @TestMetadata("augAssignmentAndInc.kt") + public void testAugAssignmentAndInc() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/augAssignmentAndInc.kt"); + } + + @TestMetadata("augAssignmentAndIncInClass.kt") + public void testAugAssignmentAndIncInClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/augAssignmentAndIncInClass.kt"); + } + + @TestMetadata("augAssignmentAndIncInClassViaConvention.kt") + public void testAugAssignmentAndIncInClassViaConvention() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/augAssignmentAndIncInClassViaConvention.kt"); + } + + @TestMetadata("augAssignmentAndIncOnExtension.kt") + public void testAugAssignmentAndIncOnExtension() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/augAssignmentAndIncOnExtension.kt"); + } + + @TestMetadata("augAssignmentAndIncOnExtensionInClass.kt") + public void testAugAssignmentAndIncOnExtensionInClass() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/augAssignmentAndIncOnExtensionInClass.kt"); + } + + @TestMetadata("augAssignmentAndIncViaConvention.kt") + public void testAugAssignmentAndIncViaConvention() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/augAssignmentAndIncViaConvention.kt"); + } + + @TestMetadata("property.kt") + public void testProperty() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/property.kt"); + } + + @TestMetadata("reifiedVal.kt") + public void testReifiedVal() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/reifiedVal.kt"); + } + + @TestMetadata("reifiedVar.kt") + public void testReifiedVar() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/reifiedVar.kt"); + } + + @TestMetadata("simple.kt") + public void testSimple() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/simple.kt"); + } + + @TestMetadata("simpleExtension.kt") + public void testSimpleExtension() throws Exception { + runTest("compiler/testData/codegen/boxInline/property/simpleExtension.kt"); + } +} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/abstractClassesForGeneratedTests.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/abstractClassesForGeneratedTests.kt index 380f6c1e590..9e98a112108 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/abstractClassesForGeneratedTests.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/abstractClassesForGeneratedTests.kt @@ -55,3 +55,29 @@ abstract class AbstractSourceMapGenerationSmokeTest : BasicBoxTest( ) abstract class AbstractIrBoxJsTest : BasicIrBoxTest(BasicBoxTest.TEST_DATA_DIR_PATH + "box/", "irBox/") + +abstract class AbstractIrJsCodegenBoxTest : BasicIrBoxTest( + "compiler/testData/codegen/box/", + "codegen/irBox/" +) + +abstract class BorrowedIrInlineTest(relativePath: String) : BasicIrBoxTest( + "compiler/testData/codegen/boxInline/$relativePath", + "codegen/irBoxInline/$relativePath" +) { + init { + additionalCommonFileDirectories += BasicBoxTest.TEST_DATA_DIR_PATH + relativePath + "/_commonFiles/" + } +} + +abstract class AbstractIrNonLocalReturnsTest : BorrowedIrInlineTest("nonLocalReturns/") + +abstract class AbstractIrPropertyAccessorsInlineTests : BorrowedIrInlineTest("property/") + +abstract class AbstractIrNoInlineTests : BorrowedIrInlineTest("noInline/") + +abstract class AbstractIrCallableReferenceInlineTests : BorrowedIrInlineTest("callableReference/") + +abstract class AbstractIrEnumValuesInlineTests : BorrowedIrInlineTest("enum/") + +abstract class AbstractIrInlineDefaultValuesTests : BorrowedIrInlineTest("defaultValues/") \ No newline at end of file