diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/GenericRunner.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/GenericRunner.kt index bd0f7fc4..f35b6e26 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/GenericRunner.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/GenericRunner.kt @@ -18,6 +18,8 @@ abstract class GenericTestRunner: ITestRunnerContributor { abstract fun args(project: Project, context: KobaltContext, classpath: List, testConfig: TestConfig) : List + open fun filterTestClasses(classes: List) : List = classes + override fun run(project: Project, context: KobaltContext, configName: String, classpath: List) = TaskResult(runTests(project, context, classpath, configName)) @@ -53,7 +55,7 @@ abstract class GenericTestRunner: ITestRunnerContributor { // } context.logger.log(project.name, 2, "Found ${result.size} test classes") - return result.map { it.second } + return filterTestClasses(result.map { it.second }) } /** diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/KotlinTestRunner.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/KotlinTestRunner.kt index 8be492d1..90c5d354 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/KotlinTestRunner.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/KotlinTestRunner.kt @@ -6,5 +6,11 @@ package com.beust.kobalt.internal */ class KotlinTestRunner : JUnitRunner() { override val dependencyName = "io.kotlintest" + + /** + * KotlinTestRunner runs tests in the init{} initializer, so ignore all the extra + * classes generated by the Kotlin compiler. + */ + override fun filterTestClasses(classes: List) = classes.filter { ! it.contains("$") } }