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 f39b8c21c62..685e869a287 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 @@ -175,6 +175,10 @@ fun main(args: Array) { testClass { model("sourcemap/") } + + testClass { + model("multiModuleOrder/") + } } testGroup("js/js.tests/tests-gen", "compiler/testData", testRunnerMethodName = "runTest0") { diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/fir/AbstractJsFirTest.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/fir/AbstractJsFirTest.kt index b0256b3e7b0..92da70cb24d 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/fir/AbstractJsFirTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/fir/AbstractJsFirTest.kt @@ -7,6 +7,7 @@ import org.jetbrains.kotlin.js.test.converters.JsIrBackendFacade import org.jetbrains.kotlin.js.test.converters.incremental.RecompileModuleJsIrBackendFacade import org.jetbrains.kotlin.js.test.handlers.JsDebugRunner import org.jetbrains.kotlin.js.test.handlers.JsIrRecompiledArtifactsIdentityHandler +import org.jetbrains.kotlin.js.test.handlers.JsWrongModuleHandler import org.jetbrains.kotlin.js.test.handlers.createFirJsLineNumberHandler import org.jetbrains.kotlin.js.test.ir.AbstractJsIrTest import org.jetbrains.kotlin.parsing.parseBoolean @@ -179,6 +180,22 @@ open class AbstractFirSourceMapGenerationSmokeTest : AbstractFirJsTest( } } +open class AbstractFirMultiModuleOrderTest : AbstractFirJsTest( + pathToTestDir = "${JsEnvironmentConfigurator.TEST_DATA_DIR_PATH}/multiModuleOrder/", + testGroupOutputDirPrefix = "firMultiModuleOrder/" +) { + override fun configure(builder: TestConfigurationBuilder) { + super.configure(builder) + with(builder) { + configureJsArtifactsHandlersStep { + useHandlers( + ::JsWrongModuleHandler + ) + } + } + } +} + open class AbstractFirJsSteppingTest : AbstractFirJsTest( pathToTestDir = "compiler/testData/debug/stepping/", testGroupOutputDirPrefix = "debug/firStepping/" diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTest.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTest.kt index 93a0c2a1e34..010cf7bec82 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/AbstractJsIrTest.kt @@ -169,7 +169,7 @@ open class AbstractSourceMapGenerationSmokeTest : AbstractJsIrTest( open class AbstractMultiModuleOrderTest : AbstractJsIrTest( pathToTestDir = "${JsEnvironmentConfigurator.TEST_DATA_DIR_PATH}/multiModuleOrder/", - testGroupOutputDirPrefix = "multiModuleOrder/" + testGroupOutputDirPrefix = "irMultiModuleOrder/" ) { override fun configure(builder: TestConfigurationBuilder) { super.configure(builder) diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirMultiModuleOrderTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirMultiModuleOrderTestGenerated.java new file mode 100644 index 00000000000..98764181309 --- /dev/null +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirMultiModuleOrderTestGenerated.java @@ -0,0 +1,39 @@ +/* + * Copyright 2010-2024 JetBrains s.r.o. and Kotlin Programming Language contributors. + * 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.fir; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.GenerateJsTestsKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("js/js.translator/testData/multiModuleOrder") +@TestDataPath("$PROJECT_ROOT") +public class FirMultiModuleOrderTestGenerated extends AbstractFirMultiModuleOrderTest { + @Test + public void testAllFilesPresentInMultiModuleOrder() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("js/js.translator/testData/multiModuleOrder"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JS_IR, true); + } + + @Test + @TestMetadata("plain.kt") + public void testPlain() throws Exception { + runTest("js/js.translator/testData/multiModuleOrder/plain.kt"); + } + + @Test + @TestMetadata("umd.kt") + public void testUmd() throws Exception { + runTest("js/js.translator/testData/multiModuleOrder/umd.kt"); + } +}