From 8e6a80bed72d570c35fb0d050f001949151e5e85 Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Sun, 4 Aug 2019 22:14:10 +0300 Subject: [PATCH] Add test logs specific for IC with JS IR Incremental inline will be handled during lowerings, after all klibs are generated --- .../incremental/testingUtils/BuildLogFinder.kt | 9 ++++++--- .../AbstractIncrementalJsKlibCompilerRunnerTest.kt | 4 ++++ .../internalInlineFunctionIsChanged/js-ir-build.log | 7 +++++++ .../js-ir-build.log | 7 +++++++ .../classInlineFunctionChanged/js-ir-build.log | 6 ++++++ .../js-ir-build.log | 13 +++++++++++++ .../js-ir-build.log | 13 +++++++++++++ .../js-ir-build.log | 6 ++++++ .../pureKotlin/inlineLinesChanged/js-ir-build.log | 6 ++++++ .../inlinePropertyInClass/js-ir-build.log | 13 +++++++++++++ .../inlinePropertyOnTopLevel/js-ir-build.log | 13 +++++++++++++ .../inlineSuspendFunctionChanged/js-ir-build.log | 6 ++++++ .../inlineTwoFunctionsOneChanged/js-ir-build.log | 6 ++++++ 13 files changed, 106 insertions(+), 3 deletions(-) create mode 100644 jps-plugin/testData/incremental/js/friendsModuleDisabled/internalInlineFunctionIsChanged/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/js/inlineFunctionLocalDeclarationChanges/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/classInlineFunctionChanged/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineExtensionAccessor/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineMethodAccessor/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/inlineFunctionsCircularDependency/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/inlineLinesChanged/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/inlinePropertyInClass/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/inlinePropertyOnTopLevel/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/inlineSuspendFunctionChanged/js-ir-build.log create mode 100644 jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/js-ir-build.log diff --git a/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt b/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt index c6abe50c4d1..e15cda25098 100644 --- a/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt +++ b/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt @@ -19,12 +19,14 @@ package org.jetbrains.kotlin.incremental.testingUtils import java.io.File data class BuildLogFinder( - private val isDataContainerBuildLogEnabled: Boolean = false, - private val isGradleEnabled: Boolean = false, - private val isJsEnabled: Boolean = false + private val isDataContainerBuildLogEnabled: Boolean = false, + private val isGradleEnabled: Boolean = false, + private val isJsEnabled: Boolean = false, + private val isJsIrEnabled: Boolean = false ) { companion object { private const val JS_LOG = "js-build.log" + private const val JS_IR_LOG = "js-ir-build.log" private const val GRADLE_LOG = "gradle-build.log" private const val DATA_CONTAINER_LOG = "data-container-version-build.log" const val JS_JPS_LOG = "js-jps-build.log" @@ -38,6 +40,7 @@ data class BuildLogFinder( val names = dir.list() ?: arrayOf() val files = names.filter { File(dir, it).isFile }.toSet() val matchedName = when { + isJsIrEnabled && JS_IR_LOG in files -> JS_IR_LOG isJsEnabled && JS_LOG in files -> JS_LOG isGradleEnabled && GRADLE_LOG in files -> GRADLE_LOG isJsEnabled && JS_JPS_LOG in files -> JS_JPS_LOG diff --git a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalJsKlibCompilerRunnerTest.kt b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalJsKlibCompilerRunnerTest.kt index 74deea50d7a..de7e5275bc6 100644 --- a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalJsKlibCompilerRunnerTest.kt +++ b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalJsKlibCompilerRunnerTest.kt @@ -1,6 +1,7 @@ package org.jetbrains.kotlin.incremental import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments +import org.jetbrains.kotlin.incremental.testingUtils.BuildLogFinder import java.io.File abstract class AbstractIncrementalJsKlibCompilerRunnerTest : AbstractIncrementalJsCompilerRunnerTest() { @@ -16,4 +17,7 @@ abstract class AbstractIncrementalJsKlibCompilerRunnerTest : AbstractIncremental override fun rebuildAndCompareOutput(sourceRoots: List, testDir: File, buildLogSteps: List, outDir: File) { // todo fix } + + override val buildLogFinder: BuildLogFinder + get() = super.buildLogFinder.copy(isJsIrEnabled = true) } \ No newline at end of file diff --git a/jps-plugin/testData/incremental/js/friendsModuleDisabled/internalInlineFunctionIsChanged/js-ir-build.log b/jps-plugin/testData/incremental/js/friendsModuleDisabled/internalInlineFunctionIsChanged/js-ir-build.log new file mode 100644 index 00000000000..1010af38d1c --- /dev/null +++ b/jps-plugin/testData/incremental/js/friendsModuleDisabled/internalInlineFunctionIsChanged/js-ir-build.log @@ -0,0 +1,7 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK + diff --git a/jps-plugin/testData/incremental/js/inlineFunctionLocalDeclarationChanges/js-ir-build.log b/jps-plugin/testData/incremental/js/inlineFunctionLocalDeclarationChanges/js-ir-build.log new file mode 100644 index 00000000000..1010af38d1c --- /dev/null +++ b/jps-plugin/testData/incremental/js/inlineFunctionLocalDeclarationChanges/js-ir-build.log @@ -0,0 +1,7 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK + diff --git a/jps-plugin/testData/incremental/pureKotlin/classInlineFunctionChanged/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/classInlineFunctionChanged/js-ir-build.log new file mode 100644 index 00000000000..1d5e1c0ad2a --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/classInlineFunctionChanged/js-ir-build.log @@ -0,0 +1,6 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineExtensionAccessor/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineExtensionAccessor/js-ir-build.log new file mode 100644 index 00000000000..56d259899be --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineExtensionAccessor/js-ir-build.log @@ -0,0 +1,13 @@ +================ Step #1 ================= + +Compiling files: + src/inlineGet.kt +End of files +Exit code: OK + +================ Step #2 ================= + +Compiling files: + src/inlineSet.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineMethodAccessor/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineMethodAccessor/js-ir-build.log new file mode 100644 index 00000000000..515bb7a43c0 --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/delegatedPropertyInlineMethodAccessor/js-ir-build.log @@ -0,0 +1,13 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK + +================ Step #2 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/inlineFunctionsCircularDependency/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/inlineFunctionsCircularDependency/js-ir-build.log new file mode 100644 index 00000000000..41d2b300c76 --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/inlineFunctionsCircularDependency/js-ir-build.log @@ -0,0 +1,6 @@ +================ Step #1 ================= + +Compiling files: + src/a.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/inlineLinesChanged/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/inlineLinesChanged/js-ir-build.log new file mode 100644 index 00000000000..1d5e1c0ad2a --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/inlineLinesChanged/js-ir-build.log @@ -0,0 +1,6 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/inlinePropertyInClass/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/inlinePropertyInClass/js-ir-build.log new file mode 100644 index 00000000000..515bb7a43c0 --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/inlinePropertyInClass/js-ir-build.log @@ -0,0 +1,13 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK + +================ Step #2 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/inlinePropertyOnTopLevel/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/inlinePropertyOnTopLevel/js-ir-build.log new file mode 100644 index 00000000000..515bb7a43c0 --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/inlinePropertyOnTopLevel/js-ir-build.log @@ -0,0 +1,13 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK + +================ Step #2 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/inlineSuspendFunctionChanged/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/inlineSuspendFunctionChanged/js-ir-build.log new file mode 100644 index 00000000000..1d5e1c0ad2a --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/inlineSuspendFunctionChanged/js-ir-build.log @@ -0,0 +1,6 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file diff --git a/jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/js-ir-build.log b/jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/js-ir-build.log new file mode 100644 index 00000000000..1d5e1c0ad2a --- /dev/null +++ b/jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/js-ir-build.log @@ -0,0 +1,6 @@ +================ Step #1 ================= + +Compiling files: + src/inline.kt +End of files +Exit code: OK \ No newline at end of file