diff --git a/docker/spring-cloud-contract-docker/pom.xml b/docker/spring-cloud-contract-docker/pom.xml
index 39d728f1bc..66b679029a 100644
--- a/docker/spring-cloud-contract-docker/pom.xml
+++ b/docker/spring-cloud-contract-docker/pom.xml
@@ -24,17 +24,17 @@
- org.codehaus.groovy
+ org.apache.groovy
groovy
compile
- org.codehaus.groovy
+ org.apache.groovy
groovy-ant
compile
- org.codehaus.groovy
+ org.apache.groovy
groovy-groovydoc
compile
diff --git a/docs/pom.xml b/docs/pom.xml
index ce6a64a45f..f808711300 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -22,7 +22,7 @@
- 2.5.14
+ 4.0.0
diff --git a/docs/src/main/asciidoc/gradle-project.adoc b/docs/src/main/asciidoc/gradle-project.adoc
index 036d2e0aff..d7f70f4fd5 100644
--- a/docs/src/main/asciidoc/gradle-project.adoc
+++ b/docs/src/main/asciidoc/gradle-project.adoc
@@ -52,7 +52,7 @@ dependencyManagement {
}
dependencies {
- testImplementation "org.codehaus.groovy:groovy-all:${groovyVersion}"
+ testImplementation "org.apache.groovy:groovy-all:${groovyVersion}"
// example with adding Spock core and Spock Spring
testImplementation "org.spockframework:spock-core:${spockVersion}"
testImplementation "org.spockframework:spock-spring:${spockVersion}"
@@ -93,7 +93,7 @@ dependencyManagement {
}
dependencies {
- testImplementation "org.codehaus.groovy:groovy-all:${groovyVersion}"
+ testImplementation "org.apache.groovy:groovy-all:${groovyVersion}"
// example with adding Spock core and Spock Spring
testImplementation "org.spockframework:spock-core:${spockVersion}"
testImplementation "org.spockframework:spock-spring:${spockVersion}"
@@ -127,7 +127,7 @@ dependencyManagement {
}
dependencies {
- testImplementation "org.codehaus.groovy:groovy-all:${groovyVersion}"
+ testImplementation "org.apache.groovy:groovy-all:${groovyVersion}"
// example with adding Spock core and Spock Spring
testImplementation "org.spockframework:spock-core:${spockVersion}"
testImplementation "org.spockframework:spock-spring:${spockVersion}"
diff --git a/pom.xml b/pom.xml
index 1c3cd11734..3ed6688dbf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -35,20 +35,21 @@
3.0.6.RELEASE
5.0.4
3.2.11
- 2.0-M5-groovy-3.0
+ 2.2-M1-groovy-4.0
0.2.2
1.9
4.2.0
5.12.0.202106070339-r
1
2.27.0
+ 5.0.0
5.7.2
5.7.2
1.13.0
- 3.0.9
+ 4.0.0
3.6.3
1.6
@@ -168,11 +169,11 @@
${spock-spring.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-all
- org.codehaus.groovy
+ org.apache.groovy
groovy
@@ -183,11 +184,11 @@
${spock-spring.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-all
- org.codehaus.groovy
+ org.apache.groovy
groovy
@@ -213,11 +214,11 @@
${pact.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-all
- org.codehaus.groovy
+ org.apache.groovy
groovy
@@ -228,11 +229,11 @@
${pact.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-all
- org.codehaus.groovy
+ org.apache.groovy
groovy
@@ -306,92 +307,92 @@
- org.codehaus.groovy
+ org.apache.groovy
groovy
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-ant
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-bsf
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-console
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-docgenerator
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-groovydoc
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-groovysh
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-jmx
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-json
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-jsr223
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-nio
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-servlet
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-sql
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-swing
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-templates
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-test
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-testng
${groovy.version}
- org.codehaus.groovy
+ org.apache.groovy
groovy-xml
${groovy.version}
@@ -460,6 +461,16 @@
kotlin-compiler-embeddable
${contract.kotlin.version}
+
+ io.rest-assured
+ rest-assured
+ ${rest-assured.version}
+
+
+ io.rest-assured
+ spring-mock-mvc
+ ${rest-assured.version}
+
diff --git a/specs/spring-cloud-contract-spec-groovy/pom.xml b/specs/spring-cloud-contract-spec-groovy/pom.xml
index e83ec06063..606e2eed9d 100644
--- a/specs/spring-cloud-contract-spec-groovy/pom.xml
+++ b/specs/spring-cloud-contract-spec-groovy/pom.xml
@@ -19,19 +19,19 @@
spring-cloud-contract-spec-java
- org.codehaus.groovy
+ org.apache.groovy
groovy
- org.codehaus.groovy
+ org.apache.groovy
groovy-nio
- org.codehaus.groovy
+ org.apache.groovy
groovy-json
- org.codehaus.groovy
+ org.apache.groovy
groovy-xml
diff --git a/specs/spring-cloud-contract-spec-java/pom.xml b/specs/spring-cloud-contract-spec-java/pom.xml
index ad75a49bc5..97001dae6d 100644
--- a/specs/spring-cloud-contract-spec-java/pom.xml
+++ b/specs/spring-cloud-contract-spec-java/pom.xml
@@ -21,7 +21,7 @@
- org.codehaus.groovy
+ org.apache.groovy
groovy
@@ -42,17 +42,17 @@
spring-jcl
- org.codehaus.groovy
+ org.apache.groovy
groovy-nio
test
- org.codehaus.groovy
+ org.apache.groovy
groovy-json
test
- org.codehaus.groovy
+ org.apache.groovy
groovy-xml
test
diff --git a/spring-cloud-contract-stub-runner/pom.xml b/spring-cloud-contract-stub-runner/pom.xml
index 154b21a5c9..9f46fe8a0b 100644
--- a/spring-cloud-contract-stub-runner/pom.xml
+++ b/spring-cloud-contract-stub-runner/pom.xml
@@ -183,7 +183,7 @@
io.rest-assured
spring-mock-mvc
- 4.4.0
+ ${rest-assured.version}
test
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-converters/pom.xml b/spring-cloud-contract-tools/spring-cloud-contract-converters/pom.xml
index 1c48f567cc..dde98593f5 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-converters/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-converters/pom.xml
@@ -35,11 +35,11 @@
spring-boot-starter-logging
- org.codehaus.groovy
+ org.apache.groovy
groovy
- org.codehaus.groovy
+ org.apache.groovy
groovy-nio
@@ -79,7 +79,7 @@
io.rest-assured
rest-assured
- 4.4.0
+ ${rest-assured.version}
test
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/build.gradle b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/build.gradle
index 7f4412044a..bc8f0cdeb7 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/build.gradle
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/build.gradle
@@ -36,7 +36,6 @@ targetCompatibility = 17
repositories {
mavenLocal()
mavenCentral()
- jcenter()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven { url "https://repo.spring.io/release" }
@@ -75,9 +74,7 @@ dependencies {
exclude(group: '*')
}
- testImplementation('org.spockframework:spock-core:2.0-M5-groovy-3.0') { // @releaser:version-check-off
- exclude(group: 'org.codehaus.groovy')
- }
+ testImplementation "org.springframework.boot:spring-boot-starter-test"
testImplementation localGroovy()
testImplementation gradleTestKit()
}
@@ -89,6 +86,7 @@ task libtest() {
}
test {
+ useJUnitPlatform()
testLogging {
exceptionFormat = 'full'
}
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierIntegrationSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierIntegrationTest.groovy
similarity index 98%
rename from spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierIntegrationSpec.groovy
rename to spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierIntegrationTest.groovy
index b1d7ca2633..51ec3c6c35 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierIntegrationSpec.groovy
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierIntegrationTest.groovy
@@ -28,11 +28,11 @@ import org.gradle.testkit.runner.BuildResult
import org.gradle.testkit.runner.BuildTask
import org.gradle.testkit.runner.GradleRunner
import org.gradle.testkit.runner.TaskOutcome
-import spock.lang.Specification
+import org.junit.jupiter.api.BeforeEach
import static java.nio.charset.StandardCharsets.UTF_8
-abstract class ContractVerifierIntegrationSpec extends Specification {
+abstract class ContractVerifierIntegrationTest {
public static final String SPOCK = "testFramework = 'Spock'"
public static final String JUNIT = "testFramework = 'JUnit'"
@@ -42,7 +42,8 @@ abstract class ContractVerifierIntegrationSpec extends Specification {
File testProjectDir
- def setup() {
+ @BeforeEach
+ void setup() {
def dateString = new Date().format("yyyy-MM-dd_HH-mm-ss")
def testFolder = new File("build/generated-tests/${getClass().simpleName}/${dateString}")
testFolder.mkdirs()
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierKotlinIntegrationSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierKotlinIntegrationTest.groovy
similarity index 93%
rename from spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierKotlinIntegrationSpec.groovy
rename to spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierKotlinIntegrationTest.groovy
index 83e225e85c..e23cb69926 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierKotlinIntegrationSpec.groovy
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierKotlinIntegrationTest.groovy
@@ -21,7 +21,7 @@ import java.nio.file.Path
import static java.nio.charset.StandardCharsets.UTF_8
-abstract class ContractVerifierKotlinIntegrationSpec extends ContractVerifierIntegrationSpec {
+abstract class ContractVerifierKotlinIntegrationTest extends ContractVerifierIntegrationTest {
public static final String SPOCK = "testFramework.set(TestFramework.SPOCK)"
public static final String JUNIT = "testFramework.set(TestFramework.JUNIT)"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierTest.groovy
similarity index 51%
rename from spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierSpec.groovy
rename to spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierTest.groovy
index e3c66b0744..77ff534603 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierSpec.groovy
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ContractVerifierTest.groovy
@@ -16,7 +16,6 @@
package org.springframework.cloud.contract.verifier.plugin
-
import org.gradle.api.artifacts.Configuration
import org.gradle.api.file.Directory
import org.gradle.api.internal.project.DefaultProject
@@ -28,13 +27,16 @@ import org.gradle.api.publish.PublishingExtension
import org.gradle.api.publish.maven.plugins.MavenPublishPlugin
import org.gradle.api.tasks.SourceSet
import org.gradle.testfixtures.ProjectBuilder
-import org.springframework.cloud.contract.verifier.config.TestFramework
-import spock.lang.Specification
+import org.junit.jupiter.api.BeforeEach
+import org.junit.jupiter.api.Test
-class ContractVerifierSpec extends Specification {
+import org.springframework.cloud.contract.verifier.config.TestFramework
+
+class ContractVerifierTest {
DefaultProject project
- def setup() {
+ @BeforeEach
+ void setup() {
String dateString = new Date().format("yyyy-MM-dd_HH-mm-ss")
File testFolder = new File("build/generated-tests/${getClass().simpleName}/${dateString}")
testFolder.mkdirs()
@@ -42,31 +44,35 @@ class ContractVerifierSpec extends Specification {
project.plugins.apply(SpringCloudContractVerifierGradlePlugin)
}
- def "should apply java plugin"() {
+ @Test
+ void "should apply java plugin"() {
expect:
project.plugins.hasPlugin(JavaPlugin)
}
- def "should create contracts extension"() {
+ @Test
+ void "should create contracts extension"() {
expect:
- project.extensions.findByType(ContractVerifierExtension) != null
+ assert project.extensions.findByType(ContractVerifierExtension) != null
}
- def "should create a test sourceset with java sources"() {
+ @Test
+ void "should create a test sourceset with java sources"() {
given:
ContractVerifierExtension extension = project.extensions.getByType(ContractVerifierExtension)
Directory projectDir = project.layout.projectDirectory
SourceSet contractTest = project.convention.getPlugin(JavaPluginConvention).getSourceSets().getByName("contractTest")
expect:
- contractTest != null
- contractTest.java.srcDirs.contains(projectDir.dir("src/contractTest/java").asFile)
- contractTest.java.srcDirs.contains(extension.generatedTestJavaSourcesDir.get().asFile)
- contractTest.resources.srcDirs.contains(projectDir.dir("src/contractTest/resources").asFile)
- contractTest.resources.srcDirs.contains(extension.generatedTestResourcesDir.get().asFile)
+ assert contractTest != null
+ assert contractTest.java.srcDirs.contains(projectDir.dir("src/contractTest/java").asFile)
+ assert contractTest.java.srcDirs.contains(extension.generatedTestJavaSourcesDir.get().asFile)
+ assert contractTest.resources.srcDirs.contains(projectDir.dir("src/contractTest/resources").asFile)
+ assert contractTest.resources.srcDirs.contains(extension.generatedTestResourcesDir.get().asFile)
}
- def "should create a test sourceset with groovy sources, if the groovy plugin is present"() {
+ @Test
+ void "should create a test sourceset with groovy sources, if the groovy plugin is present"() {
given:
project.plugins.apply(GroovyPlugin)
ContractVerifierExtension extension = project.extensions.getByType(ContractVerifierExtension)
@@ -74,104 +80,116 @@ class ContractVerifierSpec extends Specification {
SourceSet contractTest = project.convention.getPlugin(JavaPluginConvention).getSourceSets().getByName("contractTest")
expect:
- contractTest != null
- contractTest.java.srcDirs.contains(projectDir.dir("src/contractTest/java").asFile)
- contractTest.java.srcDirs.contains(extension.generatedTestJavaSourcesDir.get().asFile)
- contractTest.groovy.srcDirs.contains(projectDir.dir('src/contractTest/groovy').asFile)
- contractTest.groovy.srcDirs.contains(extension.generatedTestGroovySourcesDir.get().asFile)
- contractTest.resources.srcDirs.contains(projectDir.dir("src/contractTest/resources").asFile)
- contractTest.resources.srcDirs.contains(extension.generatedTestResourcesDir.get().asFile)
+ assert contractTest != null
+ assert contractTest.java.srcDirs.contains(projectDir.dir("src/contractTest/java").asFile)
+ assert contractTest.java.srcDirs.contains(extension.generatedTestJavaSourcesDir.get().asFile)
+ assert contractTest.groovy.srcDirs.contains(projectDir.dir('src/contractTest/groovy').asFile)
+ assert contractTest.groovy.srcDirs.contains(extension.generatedTestGroovySourcesDir.get().asFile)
+ assert contractTest.resources.srcDirs.contains(projectDir.dir("src/contractTest/resources").asFile)
+ assert contractTest.resources.srcDirs.contains(extension.generatedTestResourcesDir.get().asFile)
}
- def "should setup dependency configurations"() {
+ @Test
+ void "should setup dependency configurations"() {
given:
Configuration contractTestCompileOnly = project.configurations.contractTestCompileOnly
Configuration contractTestImplementation = project.configurations.contractTestImplementation
Configuration contractTestRuntimeOnly = project.configurations.contractTestRuntimeOnly
expect:
- contractTestCompileOnly != null
- contractTestCompileOnly.extendsFrom.contains(project.configurations.testCompileOnly)
- contractTestImplementation != null
- contractTestImplementation.extendsFrom.contains(project.configurations.testImplementation)
- contractTestRuntimeOnly != null
- contractTestRuntimeOnly.extendsFrom.contains(project.configurations.testRuntimeOnly)
+ assert contractTestCompileOnly != null
+ assert contractTestCompileOnly.extendsFrom.contains(project.configurations.testCompileOnly)
+ assert contractTestImplementation != null
+ assert contractTestImplementation.extendsFrom.contains(project.configurations.testImplementation)
+ assert contractTestRuntimeOnly != null
+ assert contractTestRuntimeOnly.extendsFrom.contains(project.configurations.testRuntimeOnly)
}
- def "should create contract test task"() {
+ @Test
+ void "should create contract test task"() {
expect:
- project.tasks.named("contractTest").get() != null
+ assert project.tasks.named("contractTest").get() != null
}
- def "should create generateContractTests task"() {
+ @Test
+ void "should create generateContractTests task"() {
expect:
- project.tasks.named("generateContractTests").get() != null
+ assert project.tasks.named("generateContractTests").get() != null
}
- def "should configure generateContractTests task as a dependency of the compileContractTestJava task"() {
+ @Test
+ void "should configure generateContractTests task as a dependency of the compileContractTestJava task"() {
expect:
- project.tasks.compileContractTestJava.getDependsOn().contains(project.tasks.named("generateContractTests"))
- project.tasks.findByName("compileContractTestGroovy") == null
+ assert project.tasks.compileContractTestJava.getDependsOn().contains(project.tasks.named("generateContractTests"))
+ assert project.tasks.findByName("compileContractTestGroovy") == null
}
- def "should configure generateContractTests task as a dependency of the compileContractTestGroovy task"() {
+ @Test
+ void "should configure generateContractTests task as a dependency of the compileContractTestGroovy task"() {
given:
project.plugins.apply(GroovyPlugin)
expect:
- project.tasks.compileContractTestJava.getDependsOn().contains(project.tasks.named("generateContractTests"))
- project.tasks.compileContractTestGroovy.getDependsOn().contains(project.tasks.named("generateContractTests"))
+ assert project.tasks.compileContractTestJava.getDependsOn().contains(project.tasks.named("generateContractTests"))
+ assert project.tasks.compileContractTestGroovy.getDependsOn().contains(project.tasks.named("generateContractTests"))
}
- def "should configure generatedTestSourcesDir with the appropriate directories"() {
+ @Test
+ void "should configure generatedTestSourcesDir with the appropriate directories"() {
when:
ContractVerifierExtension extension = project.extensions.findByType(ContractVerifierExtension)
GenerateServerTestsTask generateServerTestsTask = project.tasks.getByName("generateContractTests") as GenerateServerTestsTask
then:
- generateServerTestsTask.generatedTestSourcesDir.get().asFile == extension.generatedTestJavaSourcesDir.get().asFile
+ assert generateServerTestsTask.generatedTestSourcesDir.get().asFile == extension.generatedTestJavaSourcesDir.get().asFile
and:
extension.testFramework.set(TestFramework.SPOCK)
then:
- generateServerTestsTask.generatedTestSourcesDir.get().asFile == extension.generatedTestGroovySourcesDir.get().asFile
+ assert generateServerTestsTask.generatedTestSourcesDir.get().asFile == extension.generatedTestGroovySourcesDir.get().asFile
and:
extension.generatedTestSourcesDir.set(project.file("src/random"))
then:
- generateServerTestsTask.generatedTestSourcesDir.get().asFile == extension.generatedTestSourcesDir.get().asFile
+ assert generateServerTestsTask.generatedTestSourcesDir.get().asFile == extension.generatedTestSourcesDir.get().asFile
}
- def "should create generateClientStubs task"() {
+ @Test
+ void "should create generateClientStubs task"() {
expect:
- project.tasks.named("generateClientStubs").get() != null
+ assert project.tasks.named("generateClientStubs").get() != null
}
- def "should create verifierStubsJar task"() {
+ @Test
+ void "should create verifierStubsJar task"() {
expect:
- project.tasks.named("verifierStubsJar").get() != null
+ assert project.tasks.named("verifierStubsJar").get() != null
}
- def "should configure generateClientStubs task as a dependency of the verifierStubsJar task"() {
+ @Test
+ void "should configure generateClientStubs task as a dependency of the verifierStubsJar task"() {
expect:
project.tasks.verifierStubsJar.getDependsOn().contains(project.tasks.named("generateClientStubs"))
}
- def "should configure generateClientStubs task as a dependency of the publishStubsToScm task"() {
+ @Test
+ void "should configure generateClientStubs task as a dependency of the publishStubsToScm task"() {
expect:
- project.tasks.publishStubsToScm.getDependsOn().contains(project.tasks.named("generateClientStubs"))
+ assert project.tasks.publishStubsToScm.getDependsOn().contains(project.tasks.named("generateClientStubs"))
}
- def "should create copyContracts task"() {
+ @Test
+ void "should create copyContracts task"() {
expect:
- project.tasks.named("copyContracts").get() != null
+ assert project.tasks.named("copyContracts").get() != null
}
- def "should configure copyContracts task as a dependency of the verifierStubsJar task"() {
+ @Test
+ void "should configure copyContracts task as a dependency of the verifierStubsJar task"() {
expect:
- project.tasks.verifierStubsJar.getDependsOn().contains(project.tasks.named("generateClientStubs"))
+ assert project.tasks.verifierStubsJar.getDependsOn().contains(project.tasks.named("generateClientStubs"))
}
/**
@@ -183,7 +201,8 @@ class ContractVerifierSpec extends Specification {
* responsibility.
*/
@Deprecated
- def "should configure maven-publish plugin, if enabled"() {
+ @Test
+ void "should configure maven-publish plugin, if enabled"() {
given:
project.plugins.apply(MavenPublishPlugin)
project.plugins.apply(SpringCloudContractVerifierGradlePlugin)
@@ -195,11 +214,12 @@ class ContractVerifierSpec extends Specification {
expect:
PublicationContainer publications = project.extensions.getByType(PublishingExtension).publications
- publications.size() > 0
- publications.named("stubs") != null
+ assert publications.size() > 0
+ assert publications.named("stubs") != null
}
- def "should compile"() {
+ @Test
+ void "should compile"() {
given:
project.plugins.apply(SpringCloudContractVerifierGradlePlugin)
ContractVerifierExtension extension = project.getExtensions().findByType(ContractVerifierExtension)
@@ -218,10 +238,11 @@ class ContractVerifierSpec extends Specification {
// end::base_class_mappings[]
}
expect:
- extension
+ assert extension
}
- def "should property merge scm repository settings for publishing stubs to scm"() {
+ @Test
+ void "should property merge scm repository settings for publishing stubs to scm"() {
given:
project.plugins.apply(SpringCloudContractVerifierGradlePlugin)
ContractVerifierExtension extension = project.extensions.findByType(ContractVerifierExtension)
@@ -237,11 +258,11 @@ class ContractVerifierSpec extends Specification {
}
then:
- task.contractRepository.repositoryUrl.get() == "https://git.example.com"
- task.contractRepository.username.get() == "username"
- task.contractRepository.password.get() == "password"
- task.contractRepository.proxyHost.get() == "host"
- task.contractRepository.proxyPort.get() == 8080
+ assert task.contractRepository.repositoryUrl.get() == "https://git.example.com"
+ assert task.contractRepository.username.get() == "username"
+ assert task.contractRepository.password.get() == "password"
+ assert task.contractRepository.proxyHost.get() == "host"
+ assert task.contractRepository.proxyPort.get() == 8080
and:
extension.publishStubsToScm.contractRepository.with {
@@ -253,10 +274,10 @@ class ContractVerifierSpec extends Specification {
}
then:
- task.contractRepository.repositoryUrl.get() == "https://git2.example.com"
- task.contractRepository.username.get() == "username2"
- task.contractRepository.password.get() == "password2"
- task.contractRepository.proxyHost.get() == "host2"
- task.contractRepository.proxyPort.get() == 8081
+ assert task.contractRepository.repositoryUrl.get() == "https://git2.example.com"
+ assert task.contractRepository.username.get() == "username2"
+ assert task.contractRepository.password.get() == "password2"
+ assert task.contractRepository.proxyHost.get() == "host2"
+ assert task.contractRepository.proxyPort.get() == 8081
}
}
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ScenarioProjectKotlinSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ScenarioProjectKotlinSpec.groovy
deleted file mode 100644
index a58c556b76..0000000000
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ScenarioProjectKotlinSpec.groovy
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2013-2020 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.verifier.plugin
-
-import org.gradle.testkit.runner.BuildResult
-import org.gradle.testkit.runner.TaskOutcome
-import spock.lang.Ignore
-import spock.lang.Stepwise
-
-@Ignore
-@Stepwise
-class ScenarioProjectKotlinSpec extends ContractVerifierKotlinIntegrationSpec {
-
- def setup() {
- setupForProject("functionalTest/scenarioProjectKotlin")
- runTasksSuccessfully('clean')
- //delete accidental output when previously importing SimpleBoot into Idea to tweak it
- }
-
- def "should pass basic flow for Spock"() {
- given:
- assert fileExists('build.gradle.kts')
- expect:
- runTasksSuccessfully(checkAndPublishToMavenLocal())
- jarContainsContractVerifierContracts('fraudDetectionService/build/libs')
- BuildResult result = run("check", "--info", "--stacktrace")
- result.task(":fraudDetectionService:check").outcome == TaskOutcome.UP_TO_DATE
- result.task(":loanApplicationService:check").outcome == TaskOutcome.UP_TO_DATE
- }
-
- def "should pass basic flow for JUnit"() {
- given:
- assert fileExists('build.gradle.kts')
- expect:
- switchToJunitTestFramework()
- runTasksSuccessfully(checkAndPublishToMavenLocal())
- jarContainsContractVerifierContracts('fraudDetectionService/build/libs')
- BuildResult result = run("check", "--info", "--stacktrace")
- result.task(":fraudDetectionService:check").outcome == TaskOutcome.UP_TO_DATE
- result.task(":loanApplicationService:check").outcome == TaskOutcome.UP_TO_DATE
- }
-
-}
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ScenarioProjectSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ScenarioProjectSpec.groovy
deleted file mode 100755
index 0954bd224a..0000000000
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/groovy/org/springframework/cloud/contract/verifier/plugin/ScenarioProjectSpec.groovy
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright 2013-2020 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.verifier.plugin
-
-import org.gradle.testkit.runner.BuildResult
-import org.gradle.testkit.runner.TaskOutcome
-import spock.lang.Ignore
-import spock.lang.Stepwise
-
-@Ignore
-@Stepwise
-class ScenarioProjectSpec extends ContractVerifierIntegrationSpec {
-
- def setup() {
- setupForProject("functionalTest/scenarioProject")
- runTasksSuccessfully('clean')
- //delete accidental output when previously importing SimpleBoot into Idea to tweak it
- }
-
- def "should pass basic flow for Spock"() {
- given:
- assert fileExists('build.gradle')
- expect:
- runTasksSuccessfully(checkAndPublishToMavenLocal())
- jarContainsContractVerifierContracts('fraudDetectionService/build/libs')
- BuildResult result = run("check", "--info", "--stacktrace")
- result.task(":fraudDetectionService:check").outcome == TaskOutcome.UP_TO_DATE
- result.task(":loanApplicationService:check").outcome == TaskOutcome.UP_TO_DATE
- }
-
- def "should pass basic flow for JUnit"() {
- given:
- assert fileExists('build.gradle')
- expect:
- switchToJunitTestFramework()
- emptySourceSet()
- runTasksSuccessfully(checkAndPublishToMavenLocal())
- jarContainsContractVerifierContracts('fraudDetectionService/build/libs')
- BuildResult result = run("check", "--info", "--stacktrace")
- result.task(":fraudDetectionService:check").outcome == TaskOutcome.UP_TO_DATE
- result.task(":loanApplicationService:check").outcome == TaskOutcome.UP_TO_DATE
- }
-
- def "should properly work with build cache"() {
- given:
- def gradleUserHomeDir = new File(testProjectDir, ".gradleUserHome")
- gradleUserHomeDir.mkdirs()
- String[] tasks = ["-g ${gradleUserHomeDir}", "clean", "check", "publishToMavenLocal", "--info", "--stacktrace", "--build-cache"]
- assert fileExists("build.gradle")
-
- expect:
- runTasksSuccessfully(tasks)
- jarContainsContractVerifierContracts('fraudDetectionService/build/libs')
- BuildResult result = run(tasks)
- result.task(":fraudDetectionService:copyContracts").outcome == TaskOutcome.FROM_CACHE
- result.task(":fraudDetectionService:generateContractTests").outcome == TaskOutcome.FROM_CACHE
- result.task(":fraudDetectionService:contractTest").outcome == TaskOutcome.FROM_CACHE
- result.task(":fraudDetectionService:generateClientStubs").outcome == TaskOutcome.FROM_CACHE
- result.task(":loanApplicationService:check").outcome == TaskOutcome.UP_TO_DATE
- }
-}
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/build.gradle b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/build.gradle
index 513f746016..d27deebff9 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/build.gradle
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/build.gradle
@@ -33,13 +33,13 @@ repositories {
dependencies {
implementation "org.springframework:spring-web"
implementation "org.springframework:spring-context-support"
- implementation "org.codehaus.groovy:groovy-all:${groovyVersion}"
+ implementation "org.apache.groovy:groovy-all:${groovyVersion}"
implementation 'com.jayway.jsonpath:json-path-assert:2.2.0'
testImplementation "com.github.tomakehurst:wiremock:${wiremockVersion}"
testImplementation "com.toomuchcoding.jsonassert:jsonassert:${jsonAssertVersion}"
testImplementation("org.spockframework:spock-spring:1.0-groovy-2.4") {
- exclude(group: 'org.codehaus.groovy')
+ exclude(group: 'org.apache.groovy')
}
testImplementation "io.restassured:rest-assured:$restAssuredVersion"
testImplementation "io.restassured:spring-mock-mvc:$restAssuredVersion"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/build.gradle b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/build.gradle
index dd0e94141e..2dd0fd6870 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/build.gradle
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/build.gradle
@@ -44,9 +44,9 @@ subprojects {
}
dependencies {
- testImplementation "org.codehaus.groovy:groovy"
+ testImplementation "org.apache.groovy:groovy"
testImplementation("org.spockframework:spock-core:$spockVersion") {
- exclude(group: 'org.codehaus.groovy')
+ exclude(group: 'org.apache.groovy')
}
testImplementation "junit:junit:4.12"
testImplementation "com.github.tomakehurst:wiremock:${wiremockVersion}"
@@ -112,7 +112,7 @@ configure([project(':fraudDetectionService'), project(':loanApplicationService')
implementation("org.springframework.boot:spring-boot-starter-actuator")
testRuntime("org.spockframework:spock-spring:$spockVersion") {
- exclude(group: 'org.codehaus.groovy')
+ exclude(group: 'org.apache.groovy')
}
testImplementation "org.mockito:mockito-core"
testImplementation "org.springframework:spring-test"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProjectKotlin/build.gradle.kts b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProjectKotlin/build.gradle.kts
index 193986266d..16c6709a36 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProjectKotlin/build.gradle.kts
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProjectKotlin/build.gradle.kts
@@ -53,7 +53,7 @@ subprojects {
}
dependencies {
- testCompile("org.codehaus.groovy:groovy")
+ testCompile("org.apache.groovy:groovy")
testCompile("org.spockframework:spock-core:$spockVersion")
testCompile("junit:junit:4.12")
testCompile("com.github.tomakehurst:wiremock:$wiremockVersion")
@@ -95,7 +95,7 @@ configure(listOf(project(":fraudDetectionService"), project(":loanApplicationSer
compile("org.springframework.boot:spring-boot-starter-actuator")
testRuntime("org.spockframework:spock-spring:$spockVersion") {
- exclude(group = "org.codehaus.groovy")
+ exclude(group = "org.apache.groovy")
}
testCompile("org.mockito:mockito-core")
testCompile("org.springframework:spring-test")
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/projects/spring-boot-groovy/pom.xml b/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/projects/spring-boot-groovy/pom.xml
index a1c7608d90..f827a29438 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/projects/spring-boot-groovy/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/projects/spring-boot-groovy/pom.xml
@@ -34,7 +34,7 @@
- org.codehaus.groovy
+ org.apache.groovy
groovy
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-pact/pom.xml b/spring-cloud-contract-tools/spring-cloud-contract-pact/pom.xml
index 74d2a8c117..3e40bc8ebf 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-pact/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-pact/pom.xml
@@ -31,11 +31,11 @@
spring-boot-starter-logging
- org.codehaus.groovy
+ org.apache.groovy
groovy
- org.codehaus.groovy
+ org.apache.groovy
groovy-nio
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy
index 1b1e54aebf..0d0104196d 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy
+++ b/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy
@@ -415,10 +415,10 @@ class PactContractConverterSpec extends Specification {
Map> contracts = contractResources.
collectEntries {
[(it.filename): ContractVerifierDslConverter.
- convertAsCollection(new File("/"), it.file)]
+ convertAsCollection(new File("/"), it.getFile())]
}
Map jsonPacts = pactResources.
- collectEntries { [(it.filename): it.file.text] }
+ collectEntries { [(it.filename): it.getFile().text] }
when:
Map> pacts = contracts.entrySet().
collectEntries { [(it.key): converter.convertTo(it.value)] }
diff --git a/spring-cloud-contract-verifier/pom.xml b/spring-cloud-contract-verifier/pom.xml
index fcc60ce4e2..0924151d26 100644
--- a/spring-cloud-contract-verifier/pom.xml
+++ b/spring-cloud-contract-verifier/pom.xml
@@ -133,19 +133,19 @@
org.eclipse.wst.xml.xpath2.processor
- org.codehaus.groovy
+ org.apache.groovy
groovy
- org.codehaus.groovy
+ org.apache.groovy
groovy-nio
- org.codehaus.groovy
+ org.apache.groovy
groovy-json
- org.codehaus.groovy
+ org.apache.groovy
groovy-xml
@@ -218,19 +218,19 @@
io.rest-assured
rest-assured
- 4.4.0
+ ${rest-assured.version}
test
io.rest-assured
spring-mock-mvc
- 4.4.0
+ ${rest-assured.version}
test
io.rest-assured
spring-web-test-client
- 4.4.0
+ ${rest-assured.version}
test
@@ -243,7 +243,7 @@
junit-jupiter-api
- org.codehaus.groovy
+ org.apache.groovy
groovy-testng
test
diff --git a/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/ContentUtils.groovy b/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/ContentUtils.groovy
index f1b0c532ff..9a95c501a3 100644
--- a/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/ContentUtils.groovy
+++ b/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/ContentUtils.groovy
@@ -25,6 +25,7 @@ import groovy.json.JsonException
import groovy.json.JsonOutput
import groovy.json.JsonSlurper
import groovy.transform.CompileStatic
+import groovy.xml.XmlSlurper
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.codehaus.groovy.runtime.GStringImpl
diff --git a/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/util/ContentUtilsSpec.groovy b/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/util/ContentUtilsSpec.groovy
index aa14921fa8..045eac5f61 100644
--- a/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/util/ContentUtilsSpec.groovy
+++ b/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/util/ContentUtilsSpec.groovy
@@ -20,6 +20,7 @@ package org.springframework.cloud.contract.verifier.util
import org.springframework.cloud.contract.spec.internal.DslProperty
import spock.lang.Specification
import org.xml.sax.helpers.DefaultHandler
+import groovy.xml.XmlSlurper
/**
* @author Marcin Grzejszczak
diff --git a/spring-cloud-contract-wiremock/pom.xml b/spring-cloud-contract-wiremock/pom.xml
index 8d929d1555..2803b51d96 100644
--- a/spring-cloud-contract-wiremock/pom.xml
+++ b/spring-cloud-contract-wiremock/pom.xml
@@ -84,7 +84,7 @@
io.rest-assured
rest-assured
- 4.4.0
+ ${rest-assured.version}
true
diff --git a/tests/spring-cloud-contract-stub-runner-boot-zookeeper/pom.xml b/tests/spring-cloud-contract-stub-runner-boot-zookeeper/pom.xml
index 2ddd6a1ec4..be78fc7a9d 100644
--- a/tests/spring-cloud-contract-stub-runner-boot-zookeeper/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-boot-zookeeper/pom.xml
@@ -43,7 +43,7 @@
test
- org.codehaus.groovy
+ org.apache.groovy
groovy
diff --git a/tests/spring-cloud-contract-stub-runner-camel/pom.xml b/tests/spring-cloud-contract-stub-runner-camel/pom.xml
index b5daebf723..f3e0f9f240 100644
--- a/tests/spring-cloud-contract-stub-runner-camel/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-camel/pom.xml
@@ -37,7 +37,7 @@
test
- org.codehaus.groovy
+ org.apache.groovy
groovy
diff --git a/tests/spring-cloud-contract-stub-runner-jms/pom.xml b/tests/spring-cloud-contract-stub-runner-jms/pom.xml
index 625a3f31e1..fbc018143e 100644
--- a/tests/spring-cloud-contract-stub-runner-jms/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-jms/pom.xml
@@ -33,7 +33,7 @@
test
- org.codehaus.groovy
+ org.apache.groovy
groovy
diff --git a/tests/spring-cloud-contract-stub-runner-kafka/pom.xml b/tests/spring-cloud-contract-stub-runner-kafka/pom.xml
index c69fc0c0bc..e0a097cae3 100644
--- a/tests/spring-cloud-contract-stub-runner-kafka/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-kafka/pom.xml
@@ -48,7 +48,7 @@
test
- org.codehaus.groovy
+ org.apache.groovy
groovy