From 98413f200f9c97e815403d8bf64e2fab526d3c83 Mon Sep 17 00:00:00 2001 From: Simon Ogorodnik Date: Wed, 6 Sep 2017 13:15:46 +0300 Subject: [PATCH] Disable test optimization on patterns with wildcards --- buildSrc/src/main/kotlin/tasks.kt | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/buildSrc/src/main/kotlin/tasks.kt b/buildSrc/src/main/kotlin/tasks.kt index beceb747dd7..f2f4b57f320 100644 --- a/buildSrc/src/main/kotlin/tasks.kt +++ b/buildSrc/src/main/kotlin/tasks.kt @@ -9,22 +9,21 @@ import org.gradle.kotlin.dsl.extra fun Project.projectTest(body: Test.() -> Unit = {}): Test = (tasks.findByName("test") as Test).apply { doFirst { val patterns = filter.includePatterns + ((filter as? DefaultTestFilter)?.commandLineIncludePatterns ?: emptySet()) - if (!patterns.isEmpty()) { - patterns.forEach { pattern -> - val maybeMethodName = pattern.substringAfterLast('.') - val className = if (maybeMethodName.isNotEmpty() && maybeMethodName[0].isLowerCase()) - pattern.substringBeforeLast('.') - else - pattern + if (patterns.isEmpty() || patterns.any { '*' in it }) return@doFirst + patterns.forEach { pattern -> + val maybeMethodName = pattern.substringAfterLast('.') + val className = if (maybeMethodName.isNotEmpty() && maybeMethodName[0].isLowerCase()) + pattern.substringBeforeLast('.') + else + pattern - val matchPattern = className.replace('.', '/') + ".class" + val matchPattern = className.replace('.', '/') + ".class" - include { - if (it.isDirectory) { - matchPattern.startsWith(it.path) - } else { - it.path.endsWith(matchPattern) - } + include { + if (it.isDirectory) { + matchPattern.startsWith(it.path) + } else { + it.path.endsWith(matchPattern) } } }