diff --git a/compiler/cli/cli-base/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt b/compiler/cli/cli-base/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt index 83eab9d8c8f..d9ebe21e51d 100644 --- a/compiler/cli/cli-base/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt +++ b/compiler/cli/cli-base/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt @@ -466,6 +466,17 @@ class KotlinCoreEnvironment private constructor( return KotlinCoreEnvironment(projectEnv, configuration, extensionConfigs) } + @TestOnly + @JvmStatic + fun createForParallelTests( + parentDisposable: Disposable, initialConfiguration: CompilerConfiguration, extensionConfigs: EnvironmentConfigFiles + ): KotlinCoreEnvironment { + val configuration = initialConfiguration.copy() + val appEnv = getOrCreateApplicationEnvironmentForTests(parentDisposable, configuration) + val projectEnv = ProjectEnvironment(parentDisposable, appEnv, configuration) + return KotlinCoreEnvironment(projectEnv, configuration, extensionConfigs) + } + @TestOnly @JvmStatic fun createForTests( diff --git a/js/js.tests/build.gradle.kts b/js/js.tests/build.gradle.kts index 6e0439fd3bb..7e3464a1a4d 100644 --- a/js/js.tests/build.gradle.kts +++ b/js/js.tests/build.gradle.kts @@ -325,7 +325,7 @@ fun Test.setUpBoxTests() { forwardProperties() } -val test = projectTest(parallel = true, jUnitMode = JUnitMode.JUnit5, maxHeapSizeMb = 4096) { +val test = projectTest(jUnitMode = JUnitMode.JUnit5) { setUpJsBoxTests(jsEnabled = true, jsIrEnabled = true, firEnabled = true, es6Enabled = true) inputs.dir(rootDir.resolve("compiler/cli/cli-common/resources")) // compiler.xml @@ -340,26 +340,26 @@ val test = projectTest(parallel = true, jUnitMode = JUnitMode.JUnit5, maxHeapSiz configureTestDistribution() } -val jsTest = projectTest("jsTest", parallel = true, jUnitMode = JUnitMode.JUnit5, maxHeapSizeMb = 4096) { +val jsTest = projectTest("jsTest", jUnitMode = JUnitMode.JUnit5) { setUpJsBoxTests(jsEnabled = true, jsIrEnabled = false, firEnabled = false, es6Enabled = false) useJUnitPlatform() } -projectTest("jsIrTest", true, jUnitMode = JUnitMode.JUnit5, maxHeapSizeMb = 4096) { +projectTest("jsIrTest", jUnitMode = JUnitMode.JUnit5) { setUpJsBoxTests(jsEnabled = false, jsIrEnabled = true, firEnabled = false, es6Enabled = false) useJUnitPlatform() } -projectTest("jsIrES6Test", true, jUnitMode = JUnitMode.JUnit5, maxHeapSizeMb = 4096) { +projectTest("jsIrES6Test", jUnitMode = JUnitMode.JUnit5) { setUpJsBoxTests(jsEnabled = false, jsIrEnabled = true, firEnabled = false, es6Enabled = true) useJUnitPlatform() } -projectTest("jsFirTest", true, jUnitMode = JUnitMode.JUnit5, maxHeapSizeMb = 4096) { +projectTest("jsFirTest", jUnitMode = JUnitMode.JUnit5) { setUpJsBoxTests(jsEnabled = false, jsIrEnabled = true, firEnabled = true, es6Enabled = false) useJUnitPlatform() } -projectTest("quickTest", parallel = true, jUnitMode = JUnitMode.JUnit5, maxHeapSizeMb = 4096) { +projectTest("quickTest", jUnitMode = JUnitMode.JUnit5) { setUpJsBoxTests(jsEnabled = true, jsIrEnabled = false, firEnabled = false, es6Enabled = false) systemProperty("kotlin.js.skipMinificationTest", "true") useJUnitPlatform() @@ -432,13 +432,14 @@ val runMocha by tasks.registering { finalizedBy(mochaTest) } -projectTest("invalidationTest", jUnitMode = JUnitMode.JUnit4) { +projectTest("invalidationTest", jUnitMode = JUnitMode.JUnit5) { workingDir = rootDir useJsIrBoxTests(version = version, buildDir = "$buildDir/") include("org/jetbrains/kotlin/incremental/*") dependsOn(":dist") forwardProperties() + useJUnitPlatform() } tasks.named("check") { 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 7f422b7b674..e3ac1174ce4 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 @@ -54,6 +54,17 @@ fun main(args: Array) { } } + testGroup("js/js.tests/tests-gen", "compiler/testData/binaryCompatibility", testRunnerMethodName = "runTest0") { + testClass { + model("klibEvolution", targetBackend = TargetBackend.JS_IR) + } + testClass { + model("klibEvolution", targetBackend = TargetBackend.JS_IR) + } + } + } + + generateTestGroupSuiteWithJUnit5(args) { testGroup("js/js.tests/tests-gen", "js/js.translator/testData") { testClass { model("incremental/invalidation/", pattern = "^([^_](.+))$", targetBackend = TargetBackend.JS_IR, recursive = false) @@ -68,17 +79,6 @@ fun main(args: Array) { } } - testGroup("js/js.tests/tests-gen", "compiler/testData/binaryCompatibility", testRunnerMethodName = "runTest0") { - testClass { - model("klibEvolution", targetBackend = TargetBackend.JS_IR) - } - testClass { - model("klibEvolution", targetBackend = TargetBackend.JS_IR) - } - } - } - - generateTestGroupSuiteWithJUnit5(args) { testGroup("js/js.tests/tests-gen", "js/js.translator/testData", testRunnerMethodName = "runTest0") { testClass { model("box/", pattern = "^([^_](.+))\\.kt$", excludeDirs = listOf("closure/inlineAnonymousFunctions", "es6classes")) diff --git a/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt b/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt index 58d2f86ce0f..39bb05fa8b9 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.vfs.VirtualFileManager import com.intellij.openapi.vfs.local.CoreLocalFileSystem import com.intellij.psi.PsiManager import com.intellij.psi.SingleRootFileViewProvider +import com.intellij.testFramework.TestDataFile import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig import org.jetbrains.kotlin.backend.common.phaser.toPhaseMap import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles @@ -19,10 +20,12 @@ import org.jetbrains.kotlin.config.CommonConfigurationKeys import org.jetbrains.kotlin.config.CompilerConfiguration import org.jetbrains.kotlin.config.LanguageFeature import org.jetbrains.kotlin.config.languageVersionSettings -import org.jetbrains.kotlin.ir.backend.js.* -import org.jetbrains.kotlin.ir.backend.js.ic.* +import org.jetbrains.kotlin.ir.backend.js.JsIrCompilerWithIC import org.jetbrains.kotlin.ir.backend.js.SourceMapsInfo +import org.jetbrains.kotlin.ir.backend.js.WholeWorldStageController import org.jetbrains.kotlin.ir.backend.js.codegen.JsGenerationGranularity +import org.jetbrains.kotlin.ir.backend.js.ic.* +import org.jetbrains.kotlin.ir.backend.js.jsPhases import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.CompilationOutputs import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.safeModuleName import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImplForJsIC @@ -35,19 +38,17 @@ import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.serialization.js.ModuleKind import org.jetbrains.kotlin.test.DebugMode -import org.jetbrains.kotlin.test.builders.LanguageVersionSettingsBuilder -import org.jetbrains.kotlin.test.KotlinTestWithEnvironment import org.jetbrains.kotlin.test.TargetBackend +import org.jetbrains.kotlin.test.builders.LanguageVersionSettingsBuilder import org.jetbrains.kotlin.test.util.JUnit4Assertions +import org.jetbrains.kotlin.test.utils.TestDisposable import org.jetbrains.kotlin.utils.addToStdlib.ifNotEmpty import org.junit.ComparisonFailure +import org.junit.jupiter.api.AfterEach import java.io.File -import java.util.EnumSet +import java.util.* -abstract class AbstractInvalidationTest( - private val targetBackend: TargetBackend, - private val workingDirPath: String -) : KotlinTestWithEnvironment() { +abstract class AbstractInvalidationTest(private val targetBackend: TargetBackend, private val workingDirPath: String) { companion object { private val OUT_DIR_PATH = System.getProperty("kotlin.js.test.root.out.dir") ?: error("'kotlin.js.test.root.out.dir' is not set") private val STDLIB_KLIB = File(System.getProperty("kotlin.js.stdlib.klib.path") ?: error("Please set stdlib path")).canonicalPath @@ -63,14 +64,12 @@ abstract class AbstractInvalidationTest( } private val zipAccessor = ZipFileSystemCacheableAccessor(2) + protected val environment = + KotlinCoreEnvironment.createForParallelTests(TestDisposable(), CompilerConfiguration(), EnvironmentConfigFiles.JS_CONFIG_FILES) - override fun createEnvironment(): KotlinCoreEnvironment { - return KotlinCoreEnvironment.createForTests(TestDisposable(), CompilerConfiguration(), EnvironmentConfigFiles.JS_CONFIG_FILES) - } - - override fun tearDown() { + @AfterEach + protected fun clearZipAccessor() { zipAccessor.reset() - super.tearDown() } private fun parseProjectInfo(testName: String, infoFile: File): ProjectInfo { @@ -84,13 +83,13 @@ abstract class AbstractInvalidationTest( private val File.filesInDir get() = listFiles() ?: error("cannot retrieve the file list for $absolutePath directory") - protected fun doTest(testPath: String) { + protected fun runTest(@TestDataFile testPath: String) { val testDirectory = File(testPath) val testName = testDirectory.name val projectInfoFile = File(testDirectory, PROJECT_INFO_FILE) val projectInfo = parseProjectInfo(testName, projectInfoFile) - if (isIgnoredTest(projectInfo)){ + if (isIgnoredTest(projectInfo)) { return } diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsFirInvalidationTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsFirInvalidationTestGenerated.java index 91f1b618473..a2113b7b69c 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsFirInvalidationTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsFirInvalidationTestGenerated.java @@ -6,12 +6,11 @@ package org.jetbrains.kotlin.incremental; import com.intellij.testFramework.TestDataPath; -import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; -import org.jetbrains.kotlin.test.KotlinTestUtils; import org.jetbrains.kotlin.test.util.KtTestUtil; import org.jetbrains.kotlin.test.TargetBackend; import org.jetbrains.kotlin.test.TestMetadata; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; import java.io.File; import java.util.regex.Pattern; @@ -20,376 +19,445 @@ import java.util.regex.Pattern; @SuppressWarnings("all") @TestMetadata("js/js.translator/testData/incremental/invalidation") @TestDataPath("$PROJECT_ROOT") -@RunWith(JUnit3RunnerWithInners.class) public class JsFirInvalidationTestGenerated extends AbstractJsFirInvalidationTest { - private void runTest(String testDataFilePath) throws Exception { - KotlinTestUtils.runTest(this::doTest, TargetBackend.JS_IR, testDataFilePath); - } - + @Test @TestMetadata("addUpdateRemoveDependentFile") public void testAddUpdateRemoveDependentFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/addUpdateRemoveDependentFile/"); } + @Test @TestMetadata("addUpdateRemoveDependentModule") public void testAddUpdateRemoveDependentModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/addUpdateRemoveDependentModule/"); } + @Test public void testAllFilesPresentInInvalidation() throws Exception { KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("js/js.translator/testData/incremental/invalidation"), Pattern.compile("^([^_](.+))$"), null, TargetBackend.JS_IR, false); } + @Test @TestMetadata("circleExportsUpdate") public void testCircleExportsUpdate() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/circleExportsUpdate/"); } + @Test @TestMetadata("circleInlineImportsUpdate") public void testCircleInlineImportsUpdate() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/circleInlineImportsUpdate/"); } + @Test @TestMetadata("class") public void testClass() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/class/"); } + @Test @TestMetadata("classFunctionsAndFields") public void testClassFunctionsAndFields() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/classFunctionsAndFields/"); } + @Test @TestMetadata("companionFunction") public void testCompanionFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionFunction/"); } + @Test @TestMetadata("companionInlineFunction") public void testCompanionInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionInlineFunction/"); } + @Test @TestMetadata("companionProperties") public void testCompanionProperties() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionProperties/"); } + @Test @TestMetadata("companionWithStdLibCall") public void testCompanionWithStdLibCall() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionWithStdLibCall/"); } + @Test @TestMetadata("constVals") public void testConstVals() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/constVals/"); } + @Test @TestMetadata("crossModuleReferences") public void testCrossModuleReferences() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/crossModuleReferences/"); } + @Test @TestMetadata("eagerInitialization") public void testEagerInitialization() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/eagerInitialization/"); } + @Test @TestMetadata("enum") public void testEnum() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/enum/"); } + @Test @TestMetadata("enumsInInlineFunctions") public void testEnumsInInlineFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/enumsInInlineFunctions/"); } + @Test @TestMetadata("exceptionsFromInlineFunction") public void testExceptionsFromInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/exceptionsFromInlineFunction/"); } + @Test @TestMetadata("exportsThroughInlineFunction") public void testExportsThroughInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/exportsThroughInlineFunction/"); } + @Test @TestMetadata("fakeOverrideClassFunctionQualifiers") public void testFakeOverrideClassFunctionQualifiers() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideClassFunctionQualifiers/"); } + @Test @TestMetadata("fakeOverrideInheritance") public void testFakeOverrideInheritance() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInheritance/"); } + @Test @TestMetadata("fakeOverrideInlineExtension") public void testFakeOverrideInlineExtension() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineExtension/"); } + @Test @TestMetadata("fakeOverrideInlineFunction") public void testFakeOverrideInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineFunction/"); } + @Test @TestMetadata("fakeOverrideInlineProperty") public void testFakeOverrideInlineProperty() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineProperty/"); } + @Test @TestMetadata("fakeOverrideInterfaceFunctionQualifiers") public void testFakeOverrideInterfaceFunctionQualifiers() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInterfaceFunctionQualifiers/"); } + @Test @TestMetadata("fastPath1") public void testFastPath1() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fastPath1/"); } + @Test @TestMetadata("fastPath2") public void testFastPath2() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fastPath2/"); } + @Test @TestMetadata("friendDependency") public void testFriendDependency() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/friendDependency/"); } + @Test @TestMetadata("functionDefaultParams") public void testFunctionDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionDefaultParams/"); } + @Test @TestMetadata("functionSignature") public void testFunctionSignature() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionSignature/"); } + @Test @TestMetadata("functionTypeInterface") public void testFunctionTypeInterface() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionTypeInterface/"); } + @Test @TestMetadata("functionTypeInterfaceReflect") public void testFunctionTypeInterfaceReflect() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionTypeInterfaceReflect/"); } + @Test @TestMetadata("genericFunctions") public void testGenericFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/genericFunctions/"); } + @Test @TestMetadata("genericInlineFunctions") public void testGenericInlineFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/genericInlineFunctions/"); } + @Test @TestMetadata("gettersAndSettersInlining") public void testGettersAndSettersInlining() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/gettersAndSettersInlining/"); } + @Test @TestMetadata("inlineBecomeNonInline") public void testInlineBecomeNonInline() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineBecomeNonInline/"); } + @Test @TestMetadata("inlineFunctionAnnotations") public void testInlineFunctionAnnotations() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAnnotations/"); } + @Test @TestMetadata("inlineFunctionAsFunctionReference") public void testInlineFunctionAsFunctionReference() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAsFunctionReference/"); } + @Test @TestMetadata("inlineFunctionAsParam") public void testInlineFunctionAsParam() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAsParam/"); } + @Test @TestMetadata("inlineFunctionCircleUsage") public void testInlineFunctionCircleUsage() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionCircleUsage/"); } + @Test @TestMetadata("inlineFunctionDefaultParams") public void testInlineFunctionDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionDefaultParams/"); } + @Test @TestMetadata("inlineFunctionWithObject") public void testInlineFunctionWithObject() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionWithObject/"); } + @Test @TestMetadata("interfaceSuperUsage") public void testInterfaceSuperUsage() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/interfaceSuperUsage/"); } + @Test @TestMetadata("interfaceWithDefaultParams") public void testInterfaceWithDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/interfaceWithDefaultParams/"); } + @Test @TestMetadata("jsCode") public void testJsCode() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsCode/"); } + @Test @TestMetadata("jsCodeWithConstString") public void testJsCodeWithConstString() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsCodeWithConstString/"); } + @Test @TestMetadata("jsExport") public void testJsExport() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsExport/"); } + @Test @TestMetadata("jsModuleAnnotation") public void testJsModuleAnnotation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/"); } + @Test @TestMetadata("languageVersionSettings") public void testLanguageVersionSettings() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/languageVersionSettings/"); } + @Test @TestMetadata("localInlineFunction") public void testLocalInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/localInlineFunction/"); } + @Test @TestMetadata("mainModuleInvalidation") public void testMainModuleInvalidation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/mainModuleInvalidation/"); } + @Test @TestMetadata("moveAndModifyInlineFunction") public void testMoveAndModifyInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveAndModifyInlineFunction/"); } + @Test @TestMetadata("moveExternalDeclarationsBetweenJsModules") public void testMoveExternalDeclarationsBetweenJsModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveExternalDeclarationsBetweenJsModules/"); } + @Test @TestMetadata("moveFilesBetweenModules") public void testMoveFilesBetweenModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveFilesBetweenModules/"); } + @Test @TestMetadata("moveInlineFunctionBetweenModules") public void testMoveInlineFunctionBetweenModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveInlineFunctionBetweenModules/"); } + @Test @TestMetadata("nestedClass") public void testNestedClass() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/nestedClass/"); } + @Test @TestMetadata("nonInlineBecomeInline") public void testNonInlineBecomeInline() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/nonInlineBecomeInline/"); } + @Test @TestMetadata("privateDeclarationLeakThroughDefaultParam") public void testPrivateDeclarationLeakThroughDefaultParam() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/privateDeclarationLeakThroughDefaultParam/"); } + @Test @TestMetadata("privateInlineFunction1") public void testPrivateInlineFunction1() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/privateInlineFunction1/"); } + @Test @TestMetadata("removeFile") public void testRemoveFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeFile/"); } + @Test @TestMetadata("removeModule") public void testRemoveModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeModule/"); } + @Test @TestMetadata("removeUnusedFile") public void testRemoveUnusedFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeUnusedFile/"); } + @Test @TestMetadata("renameFile") public void testRenameFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/renameFile/"); } + @Test @TestMetadata("renameModule") public void testRenameModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/renameModule/"); } + @Test @TestMetadata("simple") public void testSimple() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/simple/"); } + @Test @TestMetadata("splitJoinModule") public void testSplitJoinModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/splitJoinModule/"); } + @Test @TestMetadata("suspendFunctions") public void testSuspendFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/suspendFunctions/"); } + @Test @TestMetadata("suspendInterfaceWithDefaultParams") public void testSuspendInterfaceWithDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/suspendInterfaceWithDefaultParams/"); } + @Test @TestMetadata("toplevelProperties") public void testToplevelProperties() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/toplevelProperties/"); } + @Test @TestMetadata("transitiveInlineFunction") public void testTransitiveInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/transitiveInlineFunction/"); } + @Test @TestMetadata("typeScriptExports") public void testTypeScriptExports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/typeScriptExports/"); } + @Test @TestMetadata("unicodeSerializationAndDeserialization") public void testUnicodeSerializationAndDeserialization() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/unicodeSerializationAndDeserialization/"); } + @Test @TestMetadata("updateExports") public void testUpdateExports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/updateExports/"); } + @Test @TestMetadata("updateExportsAndInlineImports") public void testUpdateExportsAndInlineImports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/updateExportsAndInlineImports/"); } + @Test @TestMetadata("variance") public void testVariance() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/variance/"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrES6InvalidationTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrES6InvalidationTestGenerated.java index 85cba73d4de..cc0715e19eb 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrES6InvalidationTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrES6InvalidationTestGenerated.java @@ -6,12 +6,11 @@ package org.jetbrains.kotlin.incremental; import com.intellij.testFramework.TestDataPath; -import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; -import org.jetbrains.kotlin.test.KotlinTestUtils; import org.jetbrains.kotlin.test.util.KtTestUtil; import org.jetbrains.kotlin.test.TargetBackend; import org.jetbrains.kotlin.test.TestMetadata; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; import java.io.File; import java.util.regex.Pattern; @@ -20,376 +19,445 @@ import java.util.regex.Pattern; @SuppressWarnings("all") @TestMetadata("js/js.translator/testData/incremental/invalidation") @TestDataPath("$PROJECT_ROOT") -@RunWith(JUnit3RunnerWithInners.class) public class JsIrES6InvalidationTestGenerated extends AbstractJsIrES6InvalidationTest { - private void runTest(String testDataFilePath) throws Exception { - KotlinTestUtils.runTest(this::doTest, TargetBackend.JS_IR_ES6, testDataFilePath); - } - + @Test @TestMetadata("addUpdateRemoveDependentFile") public void testAddUpdateRemoveDependentFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/addUpdateRemoveDependentFile/"); } + @Test @TestMetadata("addUpdateRemoveDependentModule") public void testAddUpdateRemoveDependentModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/addUpdateRemoveDependentModule/"); } + @Test public void testAllFilesPresentInInvalidation() throws Exception { KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("js/js.translator/testData/incremental/invalidation"), Pattern.compile("^([^_](.+))$"), null, TargetBackend.JS_IR_ES6, false); } + @Test @TestMetadata("circleExportsUpdate") public void testCircleExportsUpdate() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/circleExportsUpdate/"); } + @Test @TestMetadata("circleInlineImportsUpdate") public void testCircleInlineImportsUpdate() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/circleInlineImportsUpdate/"); } + @Test @TestMetadata("class") public void testClass() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/class/"); } + @Test @TestMetadata("classFunctionsAndFields") public void testClassFunctionsAndFields() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/classFunctionsAndFields/"); } + @Test @TestMetadata("companionFunction") public void testCompanionFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionFunction/"); } + @Test @TestMetadata("companionInlineFunction") public void testCompanionInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionInlineFunction/"); } + @Test @TestMetadata("companionProperties") public void testCompanionProperties() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionProperties/"); } + @Test @TestMetadata("companionWithStdLibCall") public void testCompanionWithStdLibCall() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionWithStdLibCall/"); } + @Test @TestMetadata("constVals") public void testConstVals() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/constVals/"); } + @Test @TestMetadata("crossModuleReferences") public void testCrossModuleReferences() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/crossModuleReferences/"); } + @Test @TestMetadata("eagerInitialization") public void testEagerInitialization() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/eagerInitialization/"); } + @Test @TestMetadata("enum") public void testEnum() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/enum/"); } + @Test @TestMetadata("enumsInInlineFunctions") public void testEnumsInInlineFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/enumsInInlineFunctions/"); } + @Test @TestMetadata("exceptionsFromInlineFunction") public void testExceptionsFromInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/exceptionsFromInlineFunction/"); } + @Test @TestMetadata("exportsThroughInlineFunction") public void testExportsThroughInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/exportsThroughInlineFunction/"); } + @Test @TestMetadata("fakeOverrideClassFunctionQualifiers") public void testFakeOverrideClassFunctionQualifiers() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideClassFunctionQualifiers/"); } + @Test @TestMetadata("fakeOverrideInheritance") public void testFakeOverrideInheritance() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInheritance/"); } + @Test @TestMetadata("fakeOverrideInlineExtension") public void testFakeOverrideInlineExtension() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineExtension/"); } + @Test @TestMetadata("fakeOverrideInlineFunction") public void testFakeOverrideInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineFunction/"); } + @Test @TestMetadata("fakeOverrideInlineProperty") public void testFakeOverrideInlineProperty() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineProperty/"); } + @Test @TestMetadata("fakeOverrideInterfaceFunctionQualifiers") public void testFakeOverrideInterfaceFunctionQualifiers() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInterfaceFunctionQualifiers/"); } + @Test @TestMetadata("fastPath1") public void testFastPath1() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fastPath1/"); } + @Test @TestMetadata("fastPath2") public void testFastPath2() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fastPath2/"); } + @Test @TestMetadata("friendDependency") public void testFriendDependency() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/friendDependency/"); } + @Test @TestMetadata("functionDefaultParams") public void testFunctionDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionDefaultParams/"); } + @Test @TestMetadata("functionSignature") public void testFunctionSignature() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionSignature/"); } + @Test @TestMetadata("functionTypeInterface") public void testFunctionTypeInterface() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionTypeInterface/"); } + @Test @TestMetadata("functionTypeInterfaceReflect") public void testFunctionTypeInterfaceReflect() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionTypeInterfaceReflect/"); } + @Test @TestMetadata("genericFunctions") public void testGenericFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/genericFunctions/"); } + @Test @TestMetadata("genericInlineFunctions") public void testGenericInlineFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/genericInlineFunctions/"); } + @Test @TestMetadata("gettersAndSettersInlining") public void testGettersAndSettersInlining() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/gettersAndSettersInlining/"); } + @Test @TestMetadata("inlineBecomeNonInline") public void testInlineBecomeNonInline() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineBecomeNonInline/"); } + @Test @TestMetadata("inlineFunctionAnnotations") public void testInlineFunctionAnnotations() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAnnotations/"); } + @Test @TestMetadata("inlineFunctionAsFunctionReference") public void testInlineFunctionAsFunctionReference() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAsFunctionReference/"); } + @Test @TestMetadata("inlineFunctionAsParam") public void testInlineFunctionAsParam() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAsParam/"); } + @Test @TestMetadata("inlineFunctionCircleUsage") public void testInlineFunctionCircleUsage() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionCircleUsage/"); } + @Test @TestMetadata("inlineFunctionDefaultParams") public void testInlineFunctionDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionDefaultParams/"); } + @Test @TestMetadata("inlineFunctionWithObject") public void testInlineFunctionWithObject() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionWithObject/"); } + @Test @TestMetadata("interfaceSuperUsage") public void testInterfaceSuperUsage() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/interfaceSuperUsage/"); } + @Test @TestMetadata("interfaceWithDefaultParams") public void testInterfaceWithDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/interfaceWithDefaultParams/"); } + @Test @TestMetadata("jsCode") public void testJsCode() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsCode/"); } + @Test @TestMetadata("jsCodeWithConstString") public void testJsCodeWithConstString() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsCodeWithConstString/"); } + @Test @TestMetadata("jsExport") public void testJsExport() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsExport/"); } + @Test @TestMetadata("jsModuleAnnotation") public void testJsModuleAnnotation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/"); } + @Test @TestMetadata("languageVersionSettings") public void testLanguageVersionSettings() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/languageVersionSettings/"); } + @Test @TestMetadata("localInlineFunction") public void testLocalInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/localInlineFunction/"); } + @Test @TestMetadata("mainModuleInvalidation") public void testMainModuleInvalidation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/mainModuleInvalidation/"); } + @Test @TestMetadata("moveAndModifyInlineFunction") public void testMoveAndModifyInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveAndModifyInlineFunction/"); } + @Test @TestMetadata("moveExternalDeclarationsBetweenJsModules") public void testMoveExternalDeclarationsBetweenJsModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveExternalDeclarationsBetweenJsModules/"); } + @Test @TestMetadata("moveFilesBetweenModules") public void testMoveFilesBetweenModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveFilesBetweenModules/"); } + @Test @TestMetadata("moveInlineFunctionBetweenModules") public void testMoveInlineFunctionBetweenModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveInlineFunctionBetweenModules/"); } + @Test @TestMetadata("nestedClass") public void testNestedClass() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/nestedClass/"); } + @Test @TestMetadata("nonInlineBecomeInline") public void testNonInlineBecomeInline() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/nonInlineBecomeInline/"); } + @Test @TestMetadata("privateDeclarationLeakThroughDefaultParam") public void testPrivateDeclarationLeakThroughDefaultParam() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/privateDeclarationLeakThroughDefaultParam/"); } + @Test @TestMetadata("privateInlineFunction1") public void testPrivateInlineFunction1() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/privateInlineFunction1/"); } + @Test @TestMetadata("removeFile") public void testRemoveFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeFile/"); } + @Test @TestMetadata("removeModule") public void testRemoveModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeModule/"); } + @Test @TestMetadata("removeUnusedFile") public void testRemoveUnusedFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeUnusedFile/"); } + @Test @TestMetadata("renameFile") public void testRenameFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/renameFile/"); } + @Test @TestMetadata("renameModule") public void testRenameModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/renameModule/"); } + @Test @TestMetadata("simple") public void testSimple() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/simple/"); } + @Test @TestMetadata("splitJoinModule") public void testSplitJoinModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/splitJoinModule/"); } + @Test @TestMetadata("suspendFunctions") public void testSuspendFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/suspendFunctions/"); } + @Test @TestMetadata("suspendInterfaceWithDefaultParams") public void testSuspendInterfaceWithDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/suspendInterfaceWithDefaultParams/"); } + @Test @TestMetadata("toplevelProperties") public void testToplevelProperties() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/toplevelProperties/"); } + @Test @TestMetadata("transitiveInlineFunction") public void testTransitiveInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/transitiveInlineFunction/"); } + @Test @TestMetadata("typeScriptExports") public void testTypeScriptExports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/typeScriptExports/"); } + @Test @TestMetadata("unicodeSerializationAndDeserialization") public void testUnicodeSerializationAndDeserialization() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/unicodeSerializationAndDeserialization/"); } + @Test @TestMetadata("updateExports") public void testUpdateExports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/updateExports/"); } + @Test @TestMetadata("updateExportsAndInlineImports") public void testUpdateExportsAndInlineImports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/updateExportsAndInlineImports/"); } + @Test @TestMetadata("variance") public void testVariance() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/variance/"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrInvalidationTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrInvalidationTestGenerated.java index 83a06df9951..2ccea5555c1 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrInvalidationTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/incremental/JsIrInvalidationTestGenerated.java @@ -6,12 +6,11 @@ package org.jetbrains.kotlin.incremental; import com.intellij.testFramework.TestDataPath; -import org.jetbrains.kotlin.test.JUnit3RunnerWithInners; -import org.jetbrains.kotlin.test.KotlinTestUtils; import org.jetbrains.kotlin.test.util.KtTestUtil; import org.jetbrains.kotlin.test.TargetBackend; import org.jetbrains.kotlin.test.TestMetadata; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; import java.io.File; import java.util.regex.Pattern; @@ -20,376 +19,445 @@ import java.util.regex.Pattern; @SuppressWarnings("all") @TestMetadata("js/js.translator/testData/incremental/invalidation") @TestDataPath("$PROJECT_ROOT") -@RunWith(JUnit3RunnerWithInners.class) public class JsIrInvalidationTestGenerated extends AbstractJsIrInvalidationTest { - private void runTest(String testDataFilePath) throws Exception { - KotlinTestUtils.runTest(this::doTest, TargetBackend.JS_IR, testDataFilePath); - } - + @Test @TestMetadata("addUpdateRemoveDependentFile") public void testAddUpdateRemoveDependentFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/addUpdateRemoveDependentFile/"); } + @Test @TestMetadata("addUpdateRemoveDependentModule") public void testAddUpdateRemoveDependentModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/addUpdateRemoveDependentModule/"); } + @Test public void testAllFilesPresentInInvalidation() throws Exception { KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("js/js.translator/testData/incremental/invalidation"), Pattern.compile("^([^_](.+))$"), null, TargetBackend.JS_IR, false); } + @Test @TestMetadata("circleExportsUpdate") public void testCircleExportsUpdate() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/circleExportsUpdate/"); } + @Test @TestMetadata("circleInlineImportsUpdate") public void testCircleInlineImportsUpdate() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/circleInlineImportsUpdate/"); } + @Test @TestMetadata("class") public void testClass() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/class/"); } + @Test @TestMetadata("classFunctionsAndFields") public void testClassFunctionsAndFields() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/classFunctionsAndFields/"); } + @Test @TestMetadata("companionFunction") public void testCompanionFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionFunction/"); } + @Test @TestMetadata("companionInlineFunction") public void testCompanionInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionInlineFunction/"); } + @Test @TestMetadata("companionProperties") public void testCompanionProperties() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionProperties/"); } + @Test @TestMetadata("companionWithStdLibCall") public void testCompanionWithStdLibCall() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/companionWithStdLibCall/"); } + @Test @TestMetadata("constVals") public void testConstVals() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/constVals/"); } + @Test @TestMetadata("crossModuleReferences") public void testCrossModuleReferences() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/crossModuleReferences/"); } + @Test @TestMetadata("eagerInitialization") public void testEagerInitialization() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/eagerInitialization/"); } + @Test @TestMetadata("enum") public void testEnum() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/enum/"); } + @Test @TestMetadata("enumsInInlineFunctions") public void testEnumsInInlineFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/enumsInInlineFunctions/"); } + @Test @TestMetadata("exceptionsFromInlineFunction") public void testExceptionsFromInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/exceptionsFromInlineFunction/"); } + @Test @TestMetadata("exportsThroughInlineFunction") public void testExportsThroughInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/exportsThroughInlineFunction/"); } + @Test @TestMetadata("fakeOverrideClassFunctionQualifiers") public void testFakeOverrideClassFunctionQualifiers() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideClassFunctionQualifiers/"); } + @Test @TestMetadata("fakeOverrideInheritance") public void testFakeOverrideInheritance() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInheritance/"); } + @Test @TestMetadata("fakeOverrideInlineExtension") public void testFakeOverrideInlineExtension() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineExtension/"); } + @Test @TestMetadata("fakeOverrideInlineFunction") public void testFakeOverrideInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineFunction/"); } + @Test @TestMetadata("fakeOverrideInlineProperty") public void testFakeOverrideInlineProperty() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInlineProperty/"); } + @Test @TestMetadata("fakeOverrideInterfaceFunctionQualifiers") public void testFakeOverrideInterfaceFunctionQualifiers() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fakeOverrideInterfaceFunctionQualifiers/"); } + @Test @TestMetadata("fastPath1") public void testFastPath1() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fastPath1/"); } + @Test @TestMetadata("fastPath2") public void testFastPath2() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/fastPath2/"); } + @Test @TestMetadata("friendDependency") public void testFriendDependency() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/friendDependency/"); } + @Test @TestMetadata("functionDefaultParams") public void testFunctionDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionDefaultParams/"); } + @Test @TestMetadata("functionSignature") public void testFunctionSignature() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionSignature/"); } + @Test @TestMetadata("functionTypeInterface") public void testFunctionTypeInterface() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionTypeInterface/"); } + @Test @TestMetadata("functionTypeInterfaceReflect") public void testFunctionTypeInterfaceReflect() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/functionTypeInterfaceReflect/"); } + @Test @TestMetadata("genericFunctions") public void testGenericFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/genericFunctions/"); } + @Test @TestMetadata("genericInlineFunctions") public void testGenericInlineFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/genericInlineFunctions/"); } + @Test @TestMetadata("gettersAndSettersInlining") public void testGettersAndSettersInlining() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/gettersAndSettersInlining/"); } + @Test @TestMetadata("inlineBecomeNonInline") public void testInlineBecomeNonInline() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineBecomeNonInline/"); } + @Test @TestMetadata("inlineFunctionAnnotations") public void testInlineFunctionAnnotations() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAnnotations/"); } + @Test @TestMetadata("inlineFunctionAsFunctionReference") public void testInlineFunctionAsFunctionReference() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAsFunctionReference/"); } + @Test @TestMetadata("inlineFunctionAsParam") public void testInlineFunctionAsParam() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionAsParam/"); } + @Test @TestMetadata("inlineFunctionCircleUsage") public void testInlineFunctionCircleUsage() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionCircleUsage/"); } + @Test @TestMetadata("inlineFunctionDefaultParams") public void testInlineFunctionDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionDefaultParams/"); } + @Test @TestMetadata("inlineFunctionWithObject") public void testInlineFunctionWithObject() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/inlineFunctionWithObject/"); } + @Test @TestMetadata("interfaceSuperUsage") public void testInterfaceSuperUsage() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/interfaceSuperUsage/"); } + @Test @TestMetadata("interfaceWithDefaultParams") public void testInterfaceWithDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/interfaceWithDefaultParams/"); } + @Test @TestMetadata("jsCode") public void testJsCode() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsCode/"); } + @Test @TestMetadata("jsCodeWithConstString") public void testJsCodeWithConstString() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsCodeWithConstString/"); } + @Test @TestMetadata("jsExport") public void testJsExport() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsExport/"); } + @Test @TestMetadata("jsModuleAnnotation") public void testJsModuleAnnotation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/jsModuleAnnotation/"); } + @Test @TestMetadata("languageVersionSettings") public void testLanguageVersionSettings() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/languageVersionSettings/"); } + @Test @TestMetadata("localInlineFunction") public void testLocalInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/localInlineFunction/"); } + @Test @TestMetadata("mainModuleInvalidation") public void testMainModuleInvalidation() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/mainModuleInvalidation/"); } + @Test @TestMetadata("moveAndModifyInlineFunction") public void testMoveAndModifyInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveAndModifyInlineFunction/"); } + @Test @TestMetadata("moveExternalDeclarationsBetweenJsModules") public void testMoveExternalDeclarationsBetweenJsModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveExternalDeclarationsBetweenJsModules/"); } + @Test @TestMetadata("moveFilesBetweenModules") public void testMoveFilesBetweenModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveFilesBetweenModules/"); } + @Test @TestMetadata("moveInlineFunctionBetweenModules") public void testMoveInlineFunctionBetweenModules() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/moveInlineFunctionBetweenModules/"); } + @Test @TestMetadata("nestedClass") public void testNestedClass() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/nestedClass/"); } + @Test @TestMetadata("nonInlineBecomeInline") public void testNonInlineBecomeInline() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/nonInlineBecomeInline/"); } + @Test @TestMetadata("privateDeclarationLeakThroughDefaultParam") public void testPrivateDeclarationLeakThroughDefaultParam() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/privateDeclarationLeakThroughDefaultParam/"); } + @Test @TestMetadata("privateInlineFunction1") public void testPrivateInlineFunction1() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/privateInlineFunction1/"); } + @Test @TestMetadata("removeFile") public void testRemoveFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeFile/"); } + @Test @TestMetadata("removeModule") public void testRemoveModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeModule/"); } + @Test @TestMetadata("removeUnusedFile") public void testRemoveUnusedFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/removeUnusedFile/"); } + @Test @TestMetadata("renameFile") public void testRenameFile() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/renameFile/"); } + @Test @TestMetadata("renameModule") public void testRenameModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/renameModule/"); } + @Test @TestMetadata("simple") public void testSimple() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/simple/"); } + @Test @TestMetadata("splitJoinModule") public void testSplitJoinModule() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/splitJoinModule/"); } + @Test @TestMetadata("suspendFunctions") public void testSuspendFunctions() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/suspendFunctions/"); } + @Test @TestMetadata("suspendInterfaceWithDefaultParams") public void testSuspendInterfaceWithDefaultParams() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/suspendInterfaceWithDefaultParams/"); } + @Test @TestMetadata("toplevelProperties") public void testToplevelProperties() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/toplevelProperties/"); } + @Test @TestMetadata("transitiveInlineFunction") public void testTransitiveInlineFunction() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/transitiveInlineFunction/"); } + @Test @TestMetadata("typeScriptExports") public void testTypeScriptExports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/typeScriptExports/"); } + @Test @TestMetadata("unicodeSerializationAndDeserialization") public void testUnicodeSerializationAndDeserialization() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/unicodeSerializationAndDeserialization/"); } + @Test @TestMetadata("updateExports") public void testUpdateExports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/updateExports/"); } + @Test @TestMetadata("updateExportsAndInlineImports") public void testUpdateExportsAndInlineImports() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/updateExportsAndInlineImports/"); } + @Test @TestMetadata("variance") public void testVariance() throws Exception { runTest("js/js.translator/testData/incremental/invalidation/variance/");