diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTest.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTest.kt index 26ddb19f883..214f5e08b0a 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTest.kt @@ -25,6 +25,9 @@ open class KotlinJsTest : KotlinTest(), RequiresNpmDependencies { @SkipWhenEmpty internal var testFramework: KotlinJsTestFramework? = null + val testFrameworkSettings: String + @Input get() = testFramework!!.settingsState + @Input var debug: Boolean = false diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTestFramework.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTestFramework.kt index d67c3039f7d..12b2085eac7 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTestFramework.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/KotlinJsTestFramework.kt @@ -11,6 +11,8 @@ import org.jetbrains.kotlin.gradle.plugin.HasKotlinDependencies import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies interface KotlinJsTestFramework : RequiresNpmDependencies { + val settingsState: String + fun createTestExecutionSpec( task: KotlinJsTest, forkOptions: ProcessForkOptions, diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KotlinKarma.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KotlinKarma.kt index 30040349878..2e1c9ae6d2f 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KotlinKarma.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KotlinKarma.kt @@ -42,6 +42,9 @@ class KotlinKarma(val project: Project) : KotlinJsTestFramework { override val requiredNpmDependencies: Collection get() = requiredDependencies.toList() + override val settingsState: String + get() = "KotlinKarma($config)" + init { requiredDependencies.add(versions.karma) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KramaConfig.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KramaConfig.kt index 5591fc8b544..d825d25134d 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KramaConfig.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/karma/KramaConfig.kt @@ -24,6 +24,18 @@ class KarmaConfig { val type: String, val subDir: String? = null, val file: String? = null - ) + ) { + override fun toString(): String { + return "Reporter(type='$type', subDir=$subDir, file=$file)" + } + } + + override fun toString(): String { + return "CoverageReporter(dir='$dir', reporters=$reporters)" + } + } + + override fun toString(): String { + return "KarmaConfig(singleRun=$singleRun, autoWatch=$autoWatch, basePath=$basePath, files=$files, frameworks=$frameworks, browsers=$browsers, reporters=$reporters, preprocessors=$preprocessors, coverageReporter=$coverageReporter)" } } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/mocha/KotlinMocha.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/mocha/KotlinMocha.kt index c0d92bdff4f..1ff0c25ad97 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/mocha/KotlinMocha.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/mocha/KotlinMocha.kt @@ -20,6 +20,9 @@ import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTestFramework class KotlinMocha(val project: Project) : KotlinJsTestFramework { private val versions = project.nodeJs.versions + override val settingsState: String + get() = "mocha" + override val requiredNpmDependencies: Collection get() = listOf( KotlinGradleNpmPackage("test-nodejs-runner"), diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/nodejs/KotlinNodeJsTestRunner.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/nodejs/KotlinNodeJsTestRunner.kt index cdccd5346c7..e9a900423e4 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/nodejs/KotlinNodeJsTestRunner.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/testing/nodejs/KotlinNodeJsTestRunner.kt @@ -23,6 +23,9 @@ class KotlinNodeJsTestRunner(val project: Project) : KotlinJsTestFramework { @Input var ignoredTestSuites: IgnoredTestSuites = IgnoredTestSuites.showWithContents + override val settingsState: String + get() = "KotlinNodeJsTestRunner(ignoredTestSuites=$ignoredTestSuites)" + override val requiredNpmDependencies: Collection get() = listOf(KotlinGradleNpmPackage("test-nodejs-runner"))