Add integration tests subproject: integration-test

* JUnit 5 (API & Engine)
* Tests compile/run as JDK 11+
* Tests require Gradle 4.6+
This commit is contained in:
Sean Gilligan 2022-04-11 17:18:28 -07:00
parent eede925c96
commit 6ea02d1569
2 changed files with 31 additions and 0 deletions

View file

@ -0,0 +1,22 @@
plugins {
id 'java'
id 'java-library'
id 'eclipse'
}
dependencies {
implementation project(':bitcoinj-core')
testImplementation 'org.slf4j:slf4j-jdk14:1.7.36'
testImplementation "org.junit.jupiter:junit-jupiter-api:5.8.2"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.8.2"
}
sourceCompatibility = 11
compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'
javadoc.options.encoding = 'UTF-8'
test {
useJUnitPlatform()
}

View file

@ -3,6 +3,8 @@ import org.gradle.api.GradleScriptException
// Minimum Gradle version for build
def minGradleVersion = GradleVersion.version("4.4")
// Minimum Gradle version for JUnit5
def minJunit5GradleVersion = GradleVersion.version("4.6")
// Minimum Gradle version for builds of JavaFX 11 module
def minFxGradleVersion = GradleVersion.version("4.10")
@ -34,3 +36,10 @@ if (GradleVersion.current().compareTo(minFxGradleVersion) > 0) {
project(':wallettemplate').name = 'bitcoinj-wallettemplate'
}
if (GradleVersion.current().compareTo(minJunit5GradleVersion) >= 0) {
System.err.println "Including integration-test because ${GradleVersion.current()}"
include 'integration-test'
project(':integration-test').name = 'bitcoinj-integration-test'
} else {
System.err.println "Skipping integration-test, requires Gradle ${minJunit5GradleVersion}+, currently running: ${GradleVersion.current()}"
}