BankingClient/BankingClientModel/build.gradle.kts

113 lines
2.2 KiB
Plaintext
Raw Normal View History

2024-08-14 19:01:35 +00:00
@file:OptIn(ExperimentalWasmDsl::class)
import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalWasmDsl
plugins {
kotlin("multiplatform")
kotlin("plugin.noarg")
2024-08-14 19:01:35 +00:00
}
kotlin {
jvmToolchain(8)
jvm {
withJava()
testRuns["test"].executionTask.configure {
useJUnitPlatform()
testLogging {
showExceptions = true
showStandardStreams = true
events("passed", "skipped", "failed")
// exceptionFormat = org.gradle.api.tasks.testing.logging.TestExceptionFormat.FULL
}
}
}
js {
moduleName = "banking-client-model"
binaries.executable()
browser {
testTask {
useKarma {
useChromeHeadless()
useFirefoxHeadless()
}
}
}
nodejs {
testTask {
useMocha {
timeout = "20s" // Mocha times out after 2 s, which is too short for bufferExceeded() test
}
}
}
}
wasmJs()
linuxX64()
mingwX64()
iosArm64()
iosSimulatorArm64()
macosX64()
macosArm64()
watchosArm64()
watchosSimulatorArm64()
tvosArm64()
tvosSimulatorArm64()
applyDefaultHierarchyTemplate()
val kotlinxDateTimeVersion: String by project
val jsJodaTimeZoneVersion: String by project
sourceSets {
commonMain {
dependencies {
api("org.jetbrains.kotlinx:kotlinx-datetime:$kotlinxDateTimeVersion")
}
}
commonTest {
dependencies {
implementation(kotlin("test"))
}
}
jvmMain {
dependencies {
}
}
jvmTest { }
jsMain {
dependencies {
api(npm("@js-joda/timezone", jsJodaTimeZoneVersion))
}
}
jsTest { }
nativeMain { }
nativeTest { }
}
2024-08-16 14:55:33 +00:00
}
noArg {
annotation("net.codinux.accounting.common.config.NoArgConstructor")
}
2024-08-16 14:55:33 +00:00
ext["customArtifactId"] = "banking-client-model"
apply(from = "../gradle/scripts/publish-codinux.gradle.kts")