From 6b6d904ca2c9b6983392f9d44b071ad4789d5918 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brais=20Gab=C3=ADn?= Date: Sun, 4 Sep 2022 22:40:22 +0200 Subject: [PATCH] Improve test utils (#5275) --- .../arturbosch/detekt/rules/KotlinEnvironmentTestSetup.kt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/detekt-test-utils/src/main/kotlin/io/gitlab/arturbosch/detekt/rules/KotlinEnvironmentTestSetup.kt b/detekt-test-utils/src/main/kotlin/io/gitlab/arturbosch/detekt/rules/KotlinEnvironmentTestSetup.kt index 97f59ef5e36..fda626909a4 100644 --- a/detekt-test-utils/src/main/kotlin/io/gitlab/arturbosch/detekt/rules/KotlinEnvironmentTestSetup.kt +++ b/detekt-test-utils/src/main/kotlin/io/gitlab/arturbosch/detekt/rules/KotlinEnvironmentTestSetup.kt @@ -12,6 +12,7 @@ import org.spekframework.spek2.dsl.Root import org.spekframework.spek2.lifecycle.CachingMode import java.io.File import java.nio.file.Path +import kotlin.script.experimental.jvm.util.classpathFromClassloader @Deprecated( "This is specific to Spek and will be removed in a future release. Documentation has been updated to " + @@ -48,7 +49,12 @@ internal class KotlinEnvironmentResolver : ParameterResolver { override fun resolveParameter(parameterContext: ParameterContext, extensionContext: ExtensionContext): Any { val closeableWrapper = extensionContext.wrapper ?: CloseableWrapper( - createEnvironment(additionalJavaSourceRootPaths = extensionContext.additionalJavaSourcePaths()) + createEnvironment( + additionalRootPaths = checkNotNull( + classpathFromClassloader(Thread.currentThread().contextClassLoader) + ) { "We should always have a classpath" }, + additionalJavaSourceRootPaths = extensionContext.additionalJavaSourcePaths(), + ) ).also { extensionContext.wrapper = it } return closeableWrapper.wrapper.env }