mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-10-12 03:24:14 +00:00
- Move art.arcane.iris.testsupport into core/src/testFixtures and apply java-test-fixtures to core - Consume core test fixtures from the bukkit plugin, nms, probe and the three loader adapters - Delete the duplicate ProjectPaths copies in the bukkit-plugin and modded-common test trees - Point ModdedMessageContributorTest at the shared ProjectPaths - Guard CommandPackCompatTest, NativeTransitionColumnTest and StubPlatformStateTest with PlatformLeakGuard - Release the probe runtime state after DimensionStackSuperflatProbeTest opens a workspace - Keep core main classes ahead of the core jar on the test classpath so the bytecode gates still scan a directory
64 lines
2.2 KiB
Groovy
64 lines
2.2 KiB
Groovy
String apiVersion = providers.gradleProperty('apiVersion').get()
|
|
def mainClass = 'art.arcane.iris.Iris'
|
|
def bootstrapperClass = 'art.arcane.iris.IrisBootstrap'
|
|
|
|
String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate')
|
|
.orElse('com.github.VolmitSoftware:VolmLib:master-SNAPSHOT')
|
|
.get()
|
|
|
|
dependencies {
|
|
compileOnly(project(':core'))
|
|
compileOnly(libs.lombok)
|
|
annotationProcessor(libs.lombok)
|
|
compileOnly(volmLibCoordinate) {
|
|
transitive = false
|
|
}
|
|
compileOnly(libs.paper.api)
|
|
// LogFilterSVC (constructed in Iris.enable's explicit service list) implements the
|
|
// log4j-core Filter interface, so its constructor reference needs the type resolvable.
|
|
compileOnly(libs.log4j.core)
|
|
testImplementation('junit:junit:4.13.2')
|
|
testImplementation('org.mockito:mockito-core:5.23.0')
|
|
testImplementation(libs.paper.api)
|
|
testImplementation(libs.bstats)
|
|
testImplementation(project(':core'))
|
|
testImplementation(testFixtures(project(':core')))
|
|
testImplementation(volmLibCoordinate) {
|
|
transitive = false
|
|
}
|
|
compileOnly(libs.placeholderApi)
|
|
testImplementation(libs.placeholderApi) {
|
|
transitive = false
|
|
}
|
|
}
|
|
|
|
tasks.named('processResources').configure {
|
|
def pluginProperties = [
|
|
name : rootProject.name,
|
|
version : rootProject.version,
|
|
apiVersion: apiVersion,
|
|
main : mainClass,
|
|
bootstrapper: bootstrapperClass,
|
|
]
|
|
inputs.properties(pluginProperties)
|
|
filesMatching(['**/paper-plugin.yml', '**/plugin.yml']) {
|
|
expand(pluginProperties)
|
|
}
|
|
}
|
|
|
|
tasks.named('compileJava', JavaCompile).configure {
|
|
// lombok.config decides how equals/hashCode/toString are generated (fields, never getters), so editing it
|
|
// changes this module's bytecode. Gradle does not know that on its own and would serve a stale up-to-date
|
|
// build until something else in the module changed.
|
|
inputs.file(rootProject.file('lombok.config'))
|
|
.withPropertyName('lombokConfig')
|
|
.withPathSensitivity(PathSensitivity.NONE)
|
|
}
|
|
|
|
tasks.named('jar', Jar).configure {
|
|
archiveBaseName.set('iris-bukkit-plugin')
|
|
}
|
|
|
|
tasks.named('test').configure {
|
|
}
|