diff --git a/.idea/misc.xml b/.idea/misc.xml
index fa0a3d8..3666700 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,19 +1,5 @@
+
-
-
-
@@ -24,4 +10,4 @@
-
\ No newline at end of file
+
diff --git a/connekt-scripting-host/build.gradle.kts b/connekt-scripting-host/build.gradle.kts
index 13768d3..1eddffc 100644
--- a/connekt-scripting-host/build.gradle.kts
+++ b/connekt-scripting-host/build.gradle.kts
@@ -21,6 +21,7 @@ dependencies {
implementation("org.jetbrains.kotlin:kotlin-scripting-jvm")
implementation("org.jetbrains.kotlin:kotlin-scripting-jvm-host")
implementation("com.github.ajalt.clikt:clikt:5.0.1")
+ implementation("org.jetbrains.kotlin:kotlin-power-assert-compiler-plugin-embeddable:2.0.21")
// Implementation for slf4j to disable warning
implementation("org.slf4j:slf4j-nop:2.0.7")
diff --git a/connekt-scripting-host/src/main/java/io/amplicode/connekt/ConnektScriptingHost.kt b/connekt-scripting-host/src/main/java/io/amplicode/connekt/ConnektScriptingHost.kt
index bac1c04..0043a50 100644
--- a/connekt-scripting-host/src/main/java/io/amplicode/connekt/ConnektScriptingHost.kt
+++ b/connekt-scripting-host/src/main/java/io/amplicode/connekt/ConnektScriptingHost.kt
@@ -7,6 +7,7 @@ package io.amplicode.connekt
import io.amplicode.connekt.dsl.ConnektBuilder
import java.io.File
+import java.io.File.pathSeparator
import kotlin.script.experimental.api.*
import kotlin.script.experimental.host.ScriptingHostConfiguration
import kotlin.script.experimental.jvm.BasicJvmScriptEvaluator
@@ -25,6 +26,14 @@ class ConnektScriptingHost(
// that should be used to run the Evaluator.
private val jvmTarget = "1.8"
+ private val powerAssertJar by lazy {
+ System.getProperty("java.class.path")
+ .split(pathSeparator)
+ .map(::File)
+ .firstOrNull { it.name.startsWith("kotlin-power-assert-compiler-plugin-embeddable") && it.extension == "jar" }
+ ?: error("Power-Assert plugin jar not found on classpath")
+ }
+
private val compilationConfiguration =
createJvmCompilationConfigurationFromTemplate {
compilerOptions(
@@ -32,7 +41,11 @@ class ConnektScriptingHost(
"use-fast-jar-file-system",
"false",
"-Xadd-modules=ALL-MODULE-PATH",
- "-jvm-target=$jvmTarget"
+ "-jvm-target=$jvmTarget",
+ "-Xplugin=${powerAssertJar.absolutePath}",
+ "-P",
+ "plugin:org.jetbrains.kotlin.powerassert:function=kotlin.assert",
+ "plugin:org.jetbrains.kotlin.powerassert:function=kotlin.require",
)
)
}
@@ -109,4 +122,4 @@ private class NoopScriptEvaluator(
)
)
}
-}
\ No newline at end of file
+}