mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2024-12-14 20:20:30 +00:00
71f81e1201
This offers very few advantages now, but helps support the following in the future: - Reuse test support code across multiple projects (useful for multi-loader). - Allow using test fixture code in testMod. We've got a version of our gametest which use Kotlin instead of Lua for asserting computer behaviour. We can't use java-test-fixtures here for Forge reasons, so have to roll our own version. Alas. - Add an ILuaMachine implementation which runs Kotlin coroutines instead. We can use this for testing asynchronous APIs. This also replaces the FakeComputerManager. - Move most things in the .support module to .test.core. We need to use a separate package in order to cope with Java 9 modules (again, thanks Forge).
22 lines
669 B
Plaintext
22 lines
669 B
Plaintext
import cc.tweaked.gradle.CCTweakedPlugin
|
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
|
|
|
plugins {
|
|
kotlin("jvm")
|
|
}
|
|
|
|
kotlin {
|
|
jvmToolchain {
|
|
languageVersion.set(CCTweakedPlugin.JAVA_VERSION)
|
|
}
|
|
}
|
|
|
|
tasks.withType(KotlinCompile::class.java).configureEach {
|
|
// So technically we shouldn't need to do this as the toolchain sets it above. However, the option only appears
|
|
// to be set when the task executes, so doesn't get picked up by IDEs.
|
|
kotlinOptions.jvmTarget = when {
|
|
CCTweakedPlugin.JAVA_VERSION.asInt() > 8 -> CCTweakedPlugin.JAVA_VERSION.toString()
|
|
else -> "1.${CCTweakedPlugin.JAVA_VERSION.asInt()}"
|
|
}
|
|
}
|