diff --git a/docker/pom.xml b/docker/pom.xml
index f897d89446..cc95ca6dc2 100644
--- a/docker/pom.xml
+++ b/docker/pom.xml
@@ -51,6 +51,13 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
maven-deploy-plugin
2.8.2
diff --git a/docker/spring-cloud-contract-docker/pom.xml b/docker/spring-cloud-contract-docker/pom.xml
index 06db33b9d1..039222df13 100644
--- a/docker/spring-cloud-contract-docker/pom.xml
+++ b/docker/spring-cloud-contract-docker/pom.xml
@@ -53,6 +53,13 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
org.apache.maven.plugins
maven-dependency-plugin
@@ -98,7 +105,7 @@
com.spotify
dockerfile-maven-plugin
- 1.3.7
+ 1.4.5
default
diff --git a/docker/spring-cloud-contract-stub-runner-docker/pom.xml b/docker/spring-cloud-contract-stub-runner-docker/pom.xml
index 225819da6e..c13fa96d8f 100644
--- a/docker/spring-cloud-contract-stub-runner-docker/pom.xml
+++ b/docker/spring-cloud-contract-stub-runner-docker/pom.xml
@@ -27,6 +27,13 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
org.apache.maven.plugins
maven-dependency-plugin
@@ -59,7 +66,7 @@
com.spotify
dockerfile-maven-plugin
- 1.3.7
+ 1.4.5
default
diff --git a/pom.xml b/pom.xml
index 69b854e508..cd167f9a9c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -42,6 +42,8 @@
1
2.4.15
+
+ 3.2.1
@@ -314,6 +316,16 @@
groovy-xml
${groovy.version}
+
+ org.apache.maven
+ maven-aether-provider
+ ${maven.version}
+
+
+ org.apache.maven
+ maven-settings-builder
+ ${maven.version}
+
@@ -367,7 +379,6 @@
org.apache.maven.plugins
maven-surefire-plugin
- 2.20
**/*Spec.*
@@ -375,31 +386,23 @@
**/*Test.*
plain
+ true
-
- org.codehaus.plexus
- plexus-component-metadata
- 1.6
-
-
- maven-plugin-plugin
- ${maven.plugin.plugin.version}
-
-
- io.takari.maven.plugins
- takari-lifecycle-plugin
- 1.12.0
-
-
- org.eluder.coveralls
- coveralls-maven-plugin
- 4.1.0
-
org.codehaus.gmavenplus
gmavenplus-plugin
- 1.5
+ 1.6.1
+
+
+
+ addSources
+ addTestSources
+ compile
+ compileTests
+
+
+
@@ -529,7 +532,6 @@
org.apache.maven.plugins
maven-surefire-plugin
- 2.20
${surefireArgLine}
diff --git a/samples/standalone/pom.xml b/samples/standalone/pom.xml
index 30047e0104..9ff3a1882b 100644
--- a/samples/standalone/pom.xml
+++ b/samples/standalone/pom.xml
@@ -60,11 +60,10 @@
org.codehaus.gmavenplus
gmavenplus-plugin
- 1.5
- testCompile
+ compileTests
diff --git a/spring-cloud-contract-shade/pom.xml b/spring-cloud-contract-shade/pom.xml
index b08de75774..90992cd8fd 100644
--- a/spring-cloud-contract-shade/pom.xml
+++ b/spring-cloud-contract-shade/pom.xml
@@ -2,6 +2,15 @@
4.0.0
+
+ 0.1.1
+ 0.1.1
+ 3.1.6
+
+ 2.4.3
+ 3.0.0
+ 1.12
+
org.springframework.cloud
spring-cloud-contract-parent
@@ -51,14 +60,14 @@
org.eclipse.sisu
org.eclipse.sisu.inject
- 0.1.1
+ ${org.eclipse.sisu.inject.version}
true
provided
org.eclipse.sisu
org.eclipse.sisu.plexus
- 0.1.1
+ ${org.eclipse.sisu.plexus.version}
javax.enterprise
@@ -71,7 +80,7 @@
org.sonatype.sisu
sisu-guice
- 3.1.6
+ ${sisu-guice.version}
no_aop
@@ -92,7 +101,7 @@
org.apache.maven.plugins
maven-shade-plugin
- 2.4.3
+ ${maven-shade-plugin.version}
package
@@ -145,7 +154,7 @@
org.apache.maven.plugins
maven-dependency-plugin
- 3.0.0
+ ${maven-dependency-plugin.version}
unpack-dependencies
@@ -172,7 +181,7 @@
org.codehaus.mojo
build-helper-maven-plugin
- 1.12
+ ${build-helper-maven-plugin.version}
add-source
@@ -188,6 +197,13 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
\ No newline at end of file
diff --git a/spring-cloud-contract-spec/pom.xml b/spring-cloud-contract-spec/pom.xml
index bc92a2dc2f..edb530ca94 100644
--- a/spring-cloud-contract-spec/pom.xml
+++ b/spring-cloud-contract-spec/pom.xml
@@ -73,7 +73,7 @@
addSources
compile
- testCompile
+ compileTests
diff --git a/spring-cloud-contract-starters/pom.xml b/spring-cloud-contract-starters/pom.xml
index 13311eb1e5..00d3261c55 100644
--- a/spring-cloud-contract-starters/pom.xml
+++ b/spring-cloud-contract-starters/pom.xml
@@ -23,4 +23,16 @@
spring-cloud-starter-contract-verifier
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
+
+
+
diff --git a/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml
index 85b739e87e..fe59af7eaa 100644
--- a/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml
+++ b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml
@@ -59,6 +59,13 @@
true
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
diff --git a/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner/pom.xml b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner/pom.xml
index a4ec1457db..29afdc9718 100644
--- a/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner/pom.xml
+++ b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner/pom.xml
@@ -49,6 +49,13 @@
true
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
diff --git a/spring-cloud-contract-starters/spring-cloud-starter-contract-verifier/pom.xml b/spring-cloud-contract-starters/spring-cloud-starter-contract-verifier/pom.xml
index e2df9aa5c6..968e33ceee 100644
--- a/spring-cloud-contract-starters/spring-cloud-starter-contract-verifier/pom.xml
+++ b/spring-cloud-contract-starters/spring-cloud-starter-contract-verifier/pom.xml
@@ -47,6 +47,13 @@
true
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
diff --git a/spring-cloud-contract-stub-runner-boot/pom.xml b/spring-cloud-contract-stub-runner-boot/pom.xml
index 4eacdd9de9..3c50fb407f 100644
--- a/spring-cloud-contract-stub-runner-boot/pom.xml
+++ b/spring-cloud-contract-stub-runner-boot/pom.xml
@@ -27,6 +27,13 @@
true
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
diff --git a/spring-cloud-contract-stub-runner/pom.xml b/spring-cloud-contract-stub-runner/pom.xml
index 45ebe635a4..bb4af4fa08 100644
--- a/spring-cloud-contract-stub-runner/pom.xml
+++ b/spring-cloud-contract-stub-runner/pom.xml
@@ -162,7 +162,7 @@
- testCompile
+ compileTests
diff --git a/spring-cloud-contract-tools/pom.xml b/spring-cloud-contract-tools/pom.xml
index df5bf4bd6f..b7340ffe05 100644
--- a/spring-cloud-contract-tools/pom.xml
+++ b/spring-cloud-contract-tools/pom.xml
@@ -24,4 +24,15 @@
spring-cloud-contract-gradle-plugin
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
+
+
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 9cdc74f4ac..e4bc412c47 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-converters/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-converters/pom.xml
@@ -87,7 +87,7 @@
addSources
compile
- testCompile
+ compileTests
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 00323a0d2d..466fbd4fa9 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
@@ -21,13 +21,14 @@ ext {
'contract-gradle-plugin-libs-dir': contractVerifierGradlePluginLibsDir,
"WORK_OFFLINE" : gradle.startParameter.isOffline() ? 'TRUE' : 'FALSE'
]
+ javaVersionNumber = Double.parseDouble(System.getProperty("java.version"))
}
project.version = findProperty('verifierVersion')
apply plugin: 'groovy'
apply from: "$rootDir/gradle/release.gradle"
apply plugin: 'eclipse'
-apply plugin: "jacoco"
+//apply plugin: "jacoco"
apply plugin: 'checkstyle'
group = 'org.springframework.cloud'
@@ -75,7 +76,7 @@ dependencies {
}
testCompile 'info.solidsoft.spock:spock-global-unroll:0.5.0'
testCompile gradleTestKit()
- checkstyle 'org.springframework.cloud:spring-cloud-build:2.1.0.BUILD-SNAPSHOT'
+ checkstyle "org.springframework.cloud:spring-cloud-build:${springCloudBuildVersion}"
}
@@ -85,12 +86,21 @@ task libtest() {
}
}
+task checkJdkVersion {
+ doLast {
+ if (javaVersionNumber >= 8.0) {
+ logger.warn("Java Version is equal to [${javaVersionNumber}]. The tests will be disabled (due to issues with compilation)")
+ }
+ }
+}
+
test {
testLogging {
exceptionFormat = 'full'
}
systemProperties = testSystemProperties
- enabled = !project.hasProperty('fast')
+ dependsOn(checkJdkVersion)
+ enabled = !project.hasProperty('fast') && javaVersionNumber <= 8.0
}
groovydoc {
@@ -111,7 +121,7 @@ task archiveContractVerifierGradlePluginLibsDependencies(type: Sync) {
archiveContractVerifierGradlePluginLibsDependencies.dependsOn project.tasks.jar
test.dependsOn archiveContractVerifierGradlePluginLibsDependencies
-jacoco {
+/*jacoco {
toolVersion = "0.7.7.201606060606"
}
@@ -119,7 +129,7 @@ jacocoTestReport {
reports {
xml.enabled true
}
-}
+}*/
task resolveDependencies {
doLast {
@@ -135,5 +145,5 @@ task resolveDependencies {
}
task wrapper(type: Wrapper) {
- gradleVersion = '4.0.2'
+ gradleVersion = '4.10.2'
}
\ No newline at end of file
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle.properties
index befbc3599e..93f13bf3c9 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle.properties
@@ -18,4 +18,5 @@ nexusUsername =
nexusPassword =
verifierVersion=2.1.0.BUILD-SNAPSHOT
org.gradle.daemon=false
-aetherVersion=1.0.2.v20150114
\ No newline at end of file
+aetherVersion=1.0.2.v20150114
+springCloudBuildVersion=2.1.0.BUILD-SNAPSHOT
\ No newline at end of file
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.jar b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.jar
index 0ab4ff82ef..1948b9074f 100644
Binary files a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.jar and b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.properties
index dc3996502f..e0b3fb8d70 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,5 @@
-#Tue Aug 28 16:43:49 CEST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-bin.zip
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/pom.xml b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/pom.xml
index 824cfdc05f..534b42bb6a 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/pom.xml
@@ -38,6 +38,13 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
org.apache.maven.plugins
maven-clean-plugin
@@ -113,7 +120,7 @@
./gradlew
build
- jacocoTestReport
+
-PverifierVersion=${project.version}
@@ -147,7 +154,7 @@
gradlew.bat
build
- jacocoTestReport
+
-PverifierVersion=${project.version}
@@ -179,7 +186,7 @@
./gradlew
build
- jacocoTestReport
+
-Pfast
-PverifierVersion=${project.version}
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 401ee34d3c..985dab077c 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
@@ -12,9 +12,11 @@ apply plugin: 'spring-cloud-contract'
apply plugin: 'maven-publish'
group = 'org.springframework.cloud.testprojects'
+sourceCompatibility = 1.8
+targetCompatibility = 1.8
ext {
- restAssuredVersion = '3.0.2'
+ restAssuredVersion = '3.0.7'
contractsDir = file("repository/mappings")
stubsOutputDirRoot = file("${project.buildDir}/production/${project.name}-stubs/repository/")
@@ -31,7 +33,7 @@ repositories {
dependencies {
compile "org.springframework:spring-web"
compile "org.springframework:spring-context-support"
- compile "org.codehaus.groovy:groovy-all:2.5.0-beta-1"
+ compile "org.codehaus.groovy:groovy-all:${groovyVersion}"
compile 'com.jayway.jsonpath:json-path-assert:2.2.0'
testCompile "com.github.tomakehurst:wiremock:${wiremockVersion}"
@@ -58,7 +60,7 @@ contracts {
generateContractTests.dependsOn generateClientStubs
wrapper {
- gradleVersion '3.5'
+ gradleVersion '4.10.2'
}
test {
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle.properties
index 2c4532c665..e4c265c576 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle.properties
@@ -16,3 +16,4 @@
wiremockVersion=2.19.0
jsonAssertVersion=0.4.13
verifierVersion=2.1.0.BUILD-SNAPSHOT
+groovyVersion=2.4.15
\ No newline at end of file
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.jar b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.jar
index 6ffa237849..1948b9074f 100644
Binary files a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.jar and b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.properties
index 1534560008..e0b3fb8d70 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,5 @@
-#Fri Apr 28 10:55:26 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-bin.zip
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew
index 27309d9231..cccdd3d517 100755
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
##############################################################################
##
@@ -33,11 +33,11 @@ DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
-warn ( ) {
+warn () {
echo "$*"
}
-die ( ) {
+die () {
echo
echo "$*"
echo
@@ -154,11 +154,19 @@ if $cygwin ; then
esac
fi
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
+# Escape application args
+save () {
+ for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+ echo " "
}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+APP_ARGS=$(save "$@")
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+ cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew.bat b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew.bat
index 832fdb6079..e95643d6a2 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew.bat
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/bootSimple/gradlew.bat
@@ -1,90 +1,84 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/build.gradle b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/build.gradle
index de113ce1f2..f20a7d1525 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/build.gradle
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/build.gradle
@@ -23,7 +23,7 @@ buildscript {
maven { url "http://repo.spring.io/release" }
}
dependencies {
- classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.0.BUILD-SNAPSHOT")
+ classpath("org.springframework.boot:spring-boot-gradle-plugin:${bootVersion}")
}
}
@@ -42,6 +42,9 @@ ext {
subprojects {
apply plugin: 'groovy'
+ sourceCompatibility = 1.8
+ targetCompatibility = 1.8
+
repositories {
mavenCentral()
mavenLocal()
@@ -51,7 +54,7 @@ subprojects {
}
dependencies {
- testCompile 'org.codehaus.groovy:groovy-all:2.5.0-beta-1'
+ testCompile "org.codehaus.groovy:groovy"
testCompile("org.spockframework:spock-core:$spockVersion") {
exclude(group: 'org.codehaus.groovy')
}
@@ -148,5 +151,5 @@ configure(project(':loanApplicationService')) {
}
wrapper {
- gradleVersion '4.0.2'
+ gradleVersion '4.10.2'
}
\ No newline at end of file
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle.properties
index 2c4532c665..935a4cda91 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle.properties
@@ -16,3 +16,4 @@
wiremockVersion=2.19.0
jsonAssertVersion=0.4.13
verifierVersion=2.1.0.BUILD-SNAPSHOT
+bootVersion=2.1.0.M4
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.jar b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000000..1948b9074f
Binary files /dev/null and b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.properties
index e69de29bb2..e0b3fb8d70 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew
index 27309d9231..cccdd3d517 100755
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
##############################################################################
##
@@ -33,11 +33,11 @@ DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
-warn ( ) {
+warn () {
echo "$*"
}
-die ( ) {
+die () {
echo
echo "$*"
echo
@@ -154,11 +154,19 @@ if $cygwin ; then
esac
fi
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
+# Escape application args
+save () {
+ for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+ echo " "
}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+APP_ARGS=$(save "$@")
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+ cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew.bat b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew.bat
index 832fdb6079..e95643d6a2 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew.bat
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleJerseyProject/gradlew.bat
@@ -1,90 +1,84 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/build.gradle b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/build.gradle
index 497a687518..065a16e2c6 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/build.gradle
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/build.gradle
@@ -23,12 +23,12 @@ buildscript {
maven { url "http://repo.spring.io/release" }
}
dependencies {
- classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.0.BUILD-SNAPSHOT")
+ classpath("org.springframework.boot:spring-boot-gradle-plugin:${bootVersion}")
}
}
ext {
- restAssuredVersion = '3.0.2'
+ restAssuredVersion = '3.0.7'
spockVersion = '1.0-groovy-2.4'
contractVerifierStubsBaseDirectory = 'src/test/resources/stubs'
@@ -39,6 +39,9 @@ group = 'org.springframework.cloud.testprojects'
subprojects {
apply plugin: 'groovy'
+ sourceCompatibility = 1.8
+ targetCompatibility = 1.8
+
repositories {
mavenCentral()
mavenLocal()
@@ -48,9 +51,7 @@ subprojects {
}
dependencies {
- testCompile("org.codehaus.groovy:groovy-all:2.5.0-beta-1") {
- exclude(group: 'org.codehaus.groovy')
- }
+ testCompile("org.codehaus.groovy:groovy")
testCompile "org.spockframework:spock-core:$spockVersion"
testCompile("junit:junit:4.12")
testCompile "com.github.tomakehurst:wiremock:${wiremockVersion}"
@@ -130,5 +131,5 @@ configure(project(':loanApplicationService')) {
}
wrapper {
- gradleVersion '3.5'
+ gradleVersion '4.10.2'
}
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle.properties
index 2c4532c665..935a4cda91 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle.properties
@@ -16,3 +16,4 @@
wiremockVersion=2.19.0
jsonAssertVersion=0.4.13
verifierVersion=2.1.0.BUILD-SNAPSHOT
+bootVersion=2.1.0.M4
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.jar b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.jar
index 6ffa237849..1948b9074f 100644
Binary files a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.jar and b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.properties
index 1534560008..e0b3fb8d70 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,5 @@
-#Fri Apr 28 10:55:26 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-bin.zip
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew
index 27309d9231..cccdd3d517 100755
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
##############################################################################
##
@@ -33,11 +33,11 @@ DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
-warn ( ) {
+warn () {
echo "$*"
}
-die ( ) {
+die () {
echo
echo "$*"
echo
@@ -154,11 +154,19 @@ if $cygwin ; then
esac
fi
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
+# Escape application args
+save () {
+ for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+ echo " "
}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+APP_ARGS=$(save "$@")
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+ cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew.bat b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew.bat
index 832fdb6079..e95643d6a2 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew.bat
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/sampleProject/gradlew.bat
@@ -1,90 +1,84 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
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 52611a7a90..7fc247e497 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
@@ -23,12 +23,12 @@ buildscript {
maven { url "http://repo.spring.io/release" }
}
dependencies {
- classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.0.BUILD-SNAPSHOT")
+ classpath("org.springframework.boot:spring-boot-gradle-plugin:${bootVersion}")
}
}
ext {
- restAssuredVersion = '3.0.2'
+ restAssuredVersion = '3.0.7'
spockVersion = '1.0-groovy-2.4'
contractVerifierStubsBaseDirectory = 'src/test/resources/stubs'
@@ -40,6 +40,9 @@ subprojects {
apply plugin: 'groovy'
apply plugin: 'maven-publish'
+ sourceCompatibility = 1.8
+ targetCompatibility = 1.8
+
repositories {
mavenCentral()
mavenLocal()
@@ -49,7 +52,7 @@ subprojects {
}
dependencies {
- testCompile "org.codehaus.groovy:groovy-all:2.5.0-beta-1"
+ testCompile "org.codehaus.groovy:groovy"
testCompile("org.spockframework:spock-core:$spockVersion") {
exclude(group: 'org.codehaus.groovy')
}
@@ -154,5 +157,5 @@ configure(project(':loanApplicationService')) {
}
wrapper {
- gradleVersion '3.5'
+ gradleVersion '4.10.2'
}
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle.properties
index 2c4532c665..f7aa123800 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle.properties
@@ -16,3 +16,5 @@
wiremockVersion=2.19.0
jsonAssertVersion=0.4.13
verifierVersion=2.1.0.BUILD-SNAPSHOT
+bootVersion=2.1.0.M4
+groovyVersion=2.4.15
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.jar b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.jar
index 6ffa237849..1948b9074f 100644
Binary files a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.jar and b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.properties b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.properties
index 1534560008..e0b3fb8d70 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.properties
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,5 @@
-#Fri Apr 28 10:55:26 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-bin.zip
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew
index 27309d9231..cccdd3d517 100755
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
##############################################################################
##
@@ -33,11 +33,11 @@ DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
-warn ( ) {
+warn () {
echo "$*"
}
-die ( ) {
+die () {
echo
echo "$*"
echo
@@ -154,11 +154,19 @@ if $cygwin ; then
esac
fi
-# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
-function splitJvmOpts() {
- JVM_OPTS=("$@")
+# Escape application args
+save () {
+ for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+ echo " "
}
-eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
-JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+APP_ARGS=$(save "$@")
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+ cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew.bat b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew.bat
index 832fdb6079..e95643d6a2 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew.bat
+++ b/spring-cloud-contract-tools/spring-cloud-contract-gradle-plugin/src/test/resources/functionalTest/scenarioProject/gradlew.bat
@@ -1,90 +1,84 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/pom.xml b/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/pom.xml
index d305730f99..43d4af9db2 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/pom.xml
@@ -22,15 +22,24 @@
https://github.com/spring-cloud/spring-cloud-contract
- 3.2.5
- 3.5
-
UTF-8
UTF-8
false
+ 3.5
- 1.7
- 1.7
+ 2.22.0
+ 1.5.7.1
+ 3.1.1
+ 2.9.2
+ 2.9.2
+
+ 0.8.2
+ 3.0.0
+ 3.0.0
+
+ 3.5.2
+ 3.2.0
+ 3.6.0
2.1.0.BUILD-SNAPSHOT
@@ -81,7 +90,7 @@
org.apache.maven.plugins
maven-failsafe-plugin
- 2.20
+ ${maven-failsafe-plugin.version}
@@ -94,7 +103,7 @@
org.jacoco
jacoco-maven-plugin
- 0.7.9
+ ${jacoco-maven-plugin.version}
**/HelpMojo.class
@@ -116,7 +125,6 @@
org.apache.maven.plugins
maven-site-plugin
- 3.4
true
@@ -140,19 +148,14 @@
org.asciidoctor
asciidoctor-maven-plugin
- 1.5.3
-
-
- commons-lang
- commons-lang
- 2.6
+ ${asciidoctor-maven-plugin.version}
org.apache.maven.plugins
maven-scm-publish-plugin
- 1.1
+ ${maven-scm-publish-plugin.version}
${project.reporting.outputDirectory}
@@ -198,12 +201,11 @@
maven-plugin-plugin
- ${maven.plugin.plugin.version}
org.apache.maven.plugins
maven-project-info-reports-plugin
- 2.9
+ ${maven-project-info-reports-plugin.version}
@@ -292,7 +294,7 @@
org.apache.maven.shared
maven-filtering
- 3.1.0
+ ${maven-filtering.version}
@@ -340,31 +342,31 @@
org.apache.maven.plugin-tools
maven-plugin-annotations
- ${maven.plugin.plugin.version}
+ ${maven-plugin-annotations.version}
provided
org.apache.maven
maven-archiver
- 3.0.0
+ ${maven-archiver.version}
org.codehaus.plexus
plexus-archiver
- 3.1
+ ${plexus-archiver.version}
io.takari.maven.plugins
takari-plugin-testing
- 2.9.0
+ ${takari-plugin-testing.version}
test
io.takari.maven.plugins
takari-plugin-integration-testing
- 2.9.0
+ ${takari-plugin-integration-testing.version}
pom
test
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/java/org/springframework/cloud/contract/maven/verifier/PluginIT.java b/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/java/org/springframework/cloud/contract/maven/verifier/PluginIT.java
index 06135a6d2e..9c46613641 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/java/org/springframework/cloud/contract/maven/verifier/PluginIT.java
+++ b/spring-cloud-contract-tools/spring-cloud-contract-maven-plugin/src/test/java/org/springframework/cloud/contract/maven/verifier/PluginIT.java
@@ -32,7 +32,7 @@ import io.takari.maven.testing.executor.junit.MavenJUnitTestRunner;
import org.springframework.util.SocketUtils;
@RunWith(MavenJUnitTestRunner.class)
-@MavenVersions({ "3.3.3" })
+@MavenVersions({ "3.5.0" })
public class PluginIT {
@Rule
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 f645fb0d56..a800050bf4 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
@@ -85,11 +85,10 @@
org.codehaus.gmavenplus
gmavenplus-plugin
- 1.5
- testCompile
+ compileTests
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 127bf49a5d..f55197bf8b 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-pact/pom.xml
+++ b/spring-cloud-contract-tools/spring-cloud-contract-pact/pom.xml
@@ -83,8 +83,8 @@
addTestSources
generateStubs
compile
- testGenerateStubs
- testCompile
+ generateTestStubs
+ compileTests
removeStubs
removeTestStubs
diff --git a/spring-cloud-contract-verifier/pom.xml b/spring-cloud-contract-verifier/pom.xml
index 7bdfd310b4..87fb766bdd 100644
--- a/spring-cloud-contract-verifier/pom.xml
+++ b/spring-cloud-contract-verifier/pom.xml
@@ -180,7 +180,7 @@
addSources
compile
- testCompile
+ compileTests
diff --git a/tests/pom.xml b/tests/pom.xml
index c1ba804d17..3679607d51 100644
--- a/tests/pom.xml
+++ b/tests/pom.xml
@@ -18,7 +18,6 @@
Spring Cloud Contract Tests
- samples-messaging-spring
samples-messaging-stream
samples-messaging-integration
samples-messaging-amqp
@@ -32,15 +31,22 @@
spring-cloud-contract-stub-runner-amqp
-
+
-
- maven-deploy-plugin
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
+
+ maven-deploy-plugin
2.8.2
-
- true
-
-
+
+ true
+
+
diff --git a/tests/samples-messaging-amqp/src/main/java/com/example/AmqpMessagingApplication.java b/tests/samples-messaging-amqp/src/main/java/com/example/AmqpMessagingApplication.java
index 4fa3bc40b3..61c5ab2218 100644
--- a/tests/samples-messaging-amqp/src/main/java/com/example/AmqpMessagingApplication.java
+++ b/tests/samples-messaging-amqp/src/main/java/com/example/AmqpMessagingApplication.java
@@ -1,6 +1,6 @@
package com.example;
-import static org.springframework.amqp.core.MessageProperties.CONTENT_TYPE_JSON;
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.amqp.core.Exchange;
import org.springframework.amqp.core.TopicExchange;
@@ -13,7 +13,7 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
-import com.fasterxml.jackson.databind.ObjectMapper;
+import static org.springframework.amqp.core.MessageProperties.CONTENT_TYPE_JSON;
@SpringBootApplication
public class AmqpMessagingApplication {
@@ -23,9 +23,9 @@ public class AmqpMessagingApplication {
}
@Bean
- public MessageConverter messageConverter(ObjectMapper objectMapper) {
+ public MessageConverter messageConverter() {
final Jackson2JsonMessageConverter jsonMessageConverter = new Jackson2JsonMessageConverter(
- objectMapper);
+ new ObjectMapper());
jsonMessageConverter.setCreateMessageIds(true);
final ContentTypeDelegatingMessageConverter messageConverter = new ContentTypeDelegatingMessageConverter(
jsonMessageConverter);
diff --git a/tests/samples-messaging-amqp/src/main/java/com/example/Book.java b/tests/samples-messaging-amqp/src/main/java/com/example/Book.java
index c99a20fa52..e0678bbb6e 100644
--- a/tests/samples-messaging-amqp/src/main/java/com/example/Book.java
+++ b/tests/samples-messaging-amqp/src/main/java/com/example/Book.java
@@ -1,18 +1,22 @@
package com.example;
-import com.fasterxml.jackson.annotation.JsonCreator;
-
public class Book {
private String name;
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
public Book(String name) {
this.name = name;
}
+ public Book() {
+
+ }
+
public String getName() {
return this.name;
}
+ void setName(String name) {
+ this.name = name;
+ }
}
diff --git a/tests/samples-messaging-amqp/src/main/java/com/example/Issue178ListenerConfiguration.java b/tests/samples-messaging-amqp/src/main/java/com/example/Issue178ListenerConfiguration.java
index 642b9ed2e6..14d440ac63 100644
--- a/tests/samples-messaging-amqp/src/main/java/com/example/Issue178ListenerConfiguration.java
+++ b/tests/samples-messaging-amqp/src/main/java/com/example/Issue178ListenerConfiguration.java
@@ -1,5 +1,8 @@
package com.example;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
import org.springframework.amqp.core.Binding;
import org.springframework.amqp.core.BindingBuilder;
import org.springframework.amqp.core.Message;
@@ -13,9 +16,6 @@ import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
/**
* @author Marcin Grzejszczak
*/
diff --git a/tests/samples-messaging-integration/src/main/java/com/example/BookDeleted.java b/tests/samples-messaging-integration/src/main/java/com/example/BookDeleted.java
index 4f30222b88..9b8915c266 100644
--- a/tests/samples-messaging-integration/src/main/java/com/example/BookDeleted.java
+++ b/tests/samples-messaging-integration/src/main/java/com/example/BookDeleted.java
@@ -18,16 +18,23 @@ package com.example;
import java.io.Serializable;
-import com.fasterxml.jackson.annotation.JsonCreator;
-
@SuppressWarnings("serial")
public class BookDeleted implements Serializable {
- public final String bookName;
+ public String bookName;
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
public BookDeleted(String bookName) {
this.bookName = bookName;
}
+ public BookDeleted() {
+ }
+
+ public String getBookName() {
+ return this.bookName;
+ }
+
+ void setBookName(String bookName) {
+ this.bookName = bookName;
+ }
}
diff --git a/tests/samples-messaging-integration/src/main/java/com/example/BookReturned.java b/tests/samples-messaging-integration/src/main/java/com/example/BookReturned.java
index 71f8b2ab07..b9e6e08e87 100644
--- a/tests/samples-messaging-integration/src/main/java/com/example/BookReturned.java
+++ b/tests/samples-messaging-integration/src/main/java/com/example/BookReturned.java
@@ -18,16 +18,23 @@ package com.example;
import java.io.Serializable;
-import com.fasterxml.jackson.annotation.JsonCreator;
-
@SuppressWarnings("serial")
public class BookReturned implements Serializable {
- public final String bookName;
+ public String bookName;
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- BookReturned(String bookName) {
+ public BookReturned(String bookName) {
this.bookName = bookName;
}
+ public BookReturned() {
+ }
+
+ public String getBookName() {
+ return this.bookName;
+ }
+
+ void setBookName(String bookName) {
+ this.bookName = bookName;
+ }
}
diff --git a/tests/samples-messaging-spring/.springBeans b/tests/samples-messaging-spring/.springBeans
deleted file mode 100644
index 1307180635..0000000000
--- a/tests/samples-messaging-spring/.springBeans
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
- 1
-
-
-
-
-
-
- java:com.example.fraud.SpringMessagingApplication
-
-
-
-
-
-
diff --git a/tests/samples-messaging-spring/pom.xml b/tests/samples-messaging-spring/pom.xml
deleted file mode 100644
index 476a4ddec5..0000000000
--- a/tests/samples-messaging-spring/pom.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
- 4.0.0
-
- org.springframework.cloud
- spring-cloud-contract-tests
- 2.1.0.BUILD-SNAPSHOT
- ..
-
- spring-cloud-contract-sample-spring
- jar
- Spring Cloud Contract Sample Spring
- Spring Cloud Contract Sample Spring
-
-
- org.springframework.boot
- spring-boot-starter-actuator
-
-
- org.springframework.boot
- spring-boot-starter-activemq
-
-
- org.apache.activemq
- activemq-pool
-
-
- org.springframework.cloud
- spring-cloud-contract-verifier
- test
-
-
- org.spockframework
- spock-spring
- test
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
-
-
- org.codehaus.gmavenplus
- gmavenplus-plugin
-
-
-
-
diff --git a/tests/samples-messaging-spring/src/main/java/com/example/BookDeleted.java b/tests/samples-messaging-spring/src/main/java/com/example/BookDeleted.java
deleted file mode 100644
index 4f30222b88..0000000000
--- a/tests/samples-messaging-spring/src/main/java/com/example/BookDeleted.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 2013-2017 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
- *
- * http://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 com.example;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonCreator;
-
-@SuppressWarnings("serial")
-public class BookDeleted implements Serializable {
-
- public final String bookName;
-
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- public BookDeleted(String bookName) {
- this.bookName = bookName;
- }
-
-}
diff --git a/tests/samples-messaging-spring/src/main/java/com/example/BookListener.java b/tests/samples-messaging-spring/src/main/java/com/example/BookListener.java
deleted file mode 100644
index 5f6d1fb777..0000000000
--- a/tests/samples-messaging-spring/src/main/java/com/example/BookListener.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2013-2017 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
- *
- * http://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 com.example;
-
-import java.util.concurrent.atomic.AtomicBoolean;
-
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.jms.annotation.JmsListener;
-import org.springframework.jms.core.JmsTemplate;
-import org.springframework.jms.core.MessageCreator;
-import org.springframework.stereotype.Service;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-@Service
-public class BookListener {
-
- private static final Logger log = LoggerFactory.getLogger(BookListener.class);
-
- private @Autowired JmsTemplate jmsTemplate;
-
- private ObjectMapper objectMapper = new ObjectMapper();
-
- /**
- * Scenario for "should generate tests triggered by a message": client side: if sends
- * a message to input.messageFrom then message will be sent to output.messageFrom
- * server side: will send a message to input, verify the message contents and await
- * upon receiving message on the output messageFrom
- */
- @JmsListener(destination = "input")
- public void returnBook(String messageAsString) throws Exception {
- final BookReturned bookReturned = this.objectMapper.readerFor(BookReturned.class)
- .readValue(messageAsString);
- log.info("Returning book [$bookReturned]");
- MessageCreator messageCreator = new MessageCreator() {
- @Override
- public Message createMessage(Session session) throws JMSException {
- Message message = session.createObjectMessage(bookReturned);
- message.setStringProperty("BOOK-NAME", bookReturned.bookName);
- return message;
- }
- };
- this.jmsTemplate.send("output", messageCreator);
- }
-
- /**
- * Scenario for "should generate tests triggered by a message": client side: if sends
- * a message to input.messageFrom then message will be sent to output.messageFrom
- * server side: will send a message to input, verify the message contents and await
- * upon receiving message on the output messageFrom
- * @throws java.io.IOException
- * @throws com.fasterxml.jackson.core.JsonProcessingException
- */
- @JmsListener(destination = "delete")
- public void bookDeleted(String bookDeletedAsString) throws Exception {
- BookDeleted bookDeleted = this.objectMapper.readerFor(BookDeleted.class)
- .readValue(bookDeletedAsString);
- log.info("Deleting book " + bookDeleted);
- this.bookSuccessfulyDeleted.set(true);
- }
-
- AtomicBoolean bookSuccessfulyDeleted = new AtomicBoolean(false);
-
-}
diff --git a/tests/samples-messaging-spring/src/main/java/com/example/BookReturned.java b/tests/samples-messaging-spring/src/main/java/com/example/BookReturned.java
deleted file mode 100644
index 71f8b2ab07..0000000000
--- a/tests/samples-messaging-spring/src/main/java/com/example/BookReturned.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 2013-2017 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
- *
- * http://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 com.example;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonCreator;
-
-@SuppressWarnings("serial")
-public class BookReturned implements Serializable {
-
- public final String bookName;
-
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- BookReturned(String bookName) {
- this.bookName = bookName;
- }
-
-}
diff --git a/tests/samples-messaging-spring/src/main/java/com/example/BookService.java b/tests/samples-messaging-spring/src/main/java/com/example/BookService.java
deleted file mode 100644
index f0bc1b8246..0000000000
--- a/tests/samples-messaging-spring/src/main/java/com/example/BookService.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright 2013-2017 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
- *
- * http://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 com.example;
-
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.jms.core.JmsTemplate;
-import org.springframework.jms.core.MessageCreator;
-import org.springframework.stereotype.Service;
-
-@Service
-public class BookService {
-
- private static final Logger log = LoggerFactory.getLogger(BookService.class);
-
- private @Autowired JmsTemplate jmsTemplate;
-
- /**
- * Scenario for "should generate tests triggered by a method": client side: must have
- * a possibility to "trigger" sending of a message to the given messageFrom server
- * side: will run the method and await upon receiving message on the output
- * messageFrom
- *
- * Method triggers sending a message to a source
- */
- public void returnBook(final BookReturned bookReturned) {
- log.info("Returning book " + bookReturned);
- MessageCreator messageCreator = new MessageCreator() {
- @Override
- public Message createMessage(Session session) throws JMSException {
- Message message = session.createObjectMessage(bookReturned);
- message.setStringProperty("BOOK-NAME", bookReturned.bookName);
- return message;
- }
- };
- this.jmsTemplate.send("output", messageCreator);
- }
-
-}
diff --git a/tests/samples-messaging-spring/src/main/java/com/example/SpringMessagingApplication.java b/tests/samples-messaging-spring/src/main/java/com/example/SpringMessagingApplication.java
deleted file mode 100644
index 30845faa5c..0000000000
--- a/tests/samples-messaging-spring/src/main/java/com/example/SpringMessagingApplication.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2013-2017 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
- *
- * http://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 com.example;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.jms.annotation.EnableJms;
-
-@SpringBootApplication
-@EnableJms
-class SpringMessagingApplication {
-
- static void main(String[] args) {
- SpringApplication.run(SpringMessagingApplication.class, args);
- }
-
-}
diff --git a/tests/samples-messaging-spring/src/test/groovy/com/example/SpringApplicationSpec.groovy b/tests/samples-messaging-spring/src/test/groovy/com/example/SpringApplicationSpec.groovy
deleted file mode 100644
index 402fd0e8dd..0000000000
--- a/tests/samples-messaging-spring/src/test/groovy/com/example/SpringApplicationSpec.groovy
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Copyright 2013-2017 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
- *
- * http://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 com.example
-
-import javax.inject.Inject
-
-import org.junit.BeforeClass
-import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.boot.test.context.SpringBootContextLoader
-import org.springframework.cloud.contract.spec.Contract
-import org.springframework.cloud.contract.verifier.messaging.MessageVerifier
-import org.springframework.cloud.contract.verifier.messaging.boot.AutoConfigureMessageVerifier
-import org.springframework.cloud.contract.verifier.messaging.internal.ContractVerifierObjectMapper;
-import org.springframework.messaging.Message
-import org.springframework.test.context.ContextConfiguration
-
-import spock.lang.Specification
-import spock.util.concurrent.PollingConditions
-
-import com.jayway.jsonpath.DocumentContext
-import com.jayway.jsonpath.JsonPath
-import com.toomuchcoding.jsonassert.JsonAssertion
-/**
- * SPIKE ON TESTS FROM NOTES IN MessagingSpec
- */
-// Context configuration would end up in base class
-@ContextConfiguration(classes = [SpringMessagingApplication], loader = SpringBootContextLoader)
-@AutoConfigureMessageVerifier
-class SpringApplicationSpec extends Specification {
-
- // ALL CASES
- @Inject MessageVerifier> contractVerifierMessaging
- ContractVerifierObjectMapper contractVerifierObjectMapper = new ContractVerifierObjectMapper()
-
- @BeforeClass
- void init() {
- System.setProperty("org.apache.activemq.SERIALIZABLE_PACKAGES", "*")
- }
-
- def "should work for triggered based messaging"() {
- given:
- def dsl = Contract.make {
- label 'some_label'
- input {
- triggeredBy('bookReturnedTriggered()')
- }
- outputMessage {
- sentTo('output')
- body('''{ "bookName" : "foo" }''')
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
- // generated test should look like this:
- when:
- bookReturnedTriggered()
- then:
- def response = contractVerifierMessaging.receive('output')
- response.headers.get('BOOK-NAME') == 'foo'
- and:
- DocumentContext parsedJson = JsonPath.parse(contractVerifierObjectMapper.writeValueAsString(response.payload))
- JsonAssertion.assertThat(parsedJson).field('bookName').isEqualTo('foo')
- }
-
- def "should generate tests triggered by a message"() {
- given:
- def dsl = Contract.make {
- label 'some_label'
- input {
- messageFrom('input')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- outputMessage {
- sentTo('output')
- body([
- bookName: 'foo'
- ])
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
-
- // generated test should look like this:
-
- //given:
- Message> inputMessage = contractVerifierMessaging.create(
- contractVerifierObjectMapper.writeValueAsString([bookName: 'foo']),
- [sample: 'header']
- )
- when:
- contractVerifierMessaging.send(inputMessage, 'input')
- then:
- def response = contractVerifierMessaging.receive('output')
- response.headers.get('BOOK-NAME') == 'foo'
- and:
- DocumentContext parsedJson = JsonPath.parse(contractVerifierObjectMapper.writeValueAsString(response.payload))
- JsonAssertion.assertThat(parsedJson).field('bookName').isEqualTo('foo')
- }
-
- def "should generate tests without destination, triggered by a message"() {
- given:
- def dsl = Contract.make {
- label 'some_label'
- input {
- messageFrom('delete')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders {
- header('sample', 'header')
- }
- assertThat('bookWasDeleted()')
- }
- }
-
- // generated test should look like this:
-
- //given:
- Message> inputMessage = contractVerifierMessaging.create(
- contractVerifierObjectMapper.writeValueAsString([bookName: 'foo']),
- [sample: 'header']
- )
- when:
- contractVerifierMessaging.send(inputMessage, 'delete')
- then:
- noExceptionThrown()
- bookWasDeleted()
- }
-
- // BASE CLASS WOULD HAVE THIS:
-
- @Autowired BookService bookService
- @Autowired BookListener bookListener
-
- void bookReturnedTriggered() {
- bookService.returnBook(new BookReturned("foo"))
- }
-
- PollingConditions pollingConditions = new PollingConditions()
-
- void bookWasDeleted() {
- pollingConditions.eventually {
- assert bookListener.bookSuccessfulyDeleted.get()
- }
- }
-
-}
\ No newline at end of file
diff --git a/tests/samples-messaging-stream/src/main/java/com/example/BookDeleted.java b/tests/samples-messaging-stream/src/main/java/com/example/BookDeleted.java
index 4f30222b88..9b8915c266 100644
--- a/tests/samples-messaging-stream/src/main/java/com/example/BookDeleted.java
+++ b/tests/samples-messaging-stream/src/main/java/com/example/BookDeleted.java
@@ -18,16 +18,23 @@ package com.example;
import java.io.Serializable;
-import com.fasterxml.jackson.annotation.JsonCreator;
-
@SuppressWarnings("serial")
public class BookDeleted implements Serializable {
- public final String bookName;
+ public String bookName;
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
public BookDeleted(String bookName) {
this.bookName = bookName;
}
+ public BookDeleted() {
+ }
+
+ public String getBookName() {
+ return this.bookName;
+ }
+
+ void setBookName(String bookName) {
+ this.bookName = bookName;
+ }
}
diff --git a/tests/samples-messaging-stream/src/main/java/com/example/BookListener.java b/tests/samples-messaging-stream/src/main/java/com/example/BookListener.java
index 98f7a64fd1..c077b74f05 100644
--- a/tests/samples-messaging-stream/src/main/java/com/example/BookListener.java
+++ b/tests/samples-messaging-stream/src/main/java/com/example/BookListener.java
@@ -20,14 +20,15 @@ import java.util.concurrent.atomic.AtomicBoolean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.messaging.support.MessageBuilder;
+import org.springframework.stereotype.Component;
-@EnableBinding({ DeleteSink.class, Sink.class })
+@Component
public class BookListener {
private static final Logger log = LoggerFactory.getLogger(BookListener.class);
@@ -54,7 +55,7 @@ public class BookListener {
* server side: will send a message to input, verify the message contents and await
* upon receiving message on the output messageFrom
*/
- @StreamListener(DeleteSink.INPUT)
+ @StreamListener(DeleteSink.MYINPUT)
public void bookDeleted(BookDeleted bookDeleted) {
log.info("Deleting book " + bookDeleted);
// ... doing some work
diff --git a/tests/samples-messaging-stream/src/main/java/com/example/BookReturned.java b/tests/samples-messaging-stream/src/main/java/com/example/BookReturned.java
index 71f8b2ab07..b9e6e08e87 100644
--- a/tests/samples-messaging-stream/src/main/java/com/example/BookReturned.java
+++ b/tests/samples-messaging-stream/src/main/java/com/example/BookReturned.java
@@ -18,16 +18,23 @@ package com.example;
import java.io.Serializable;
-import com.fasterxml.jackson.annotation.JsonCreator;
-
@SuppressWarnings("serial")
public class BookReturned implements Serializable {
- public final String bookName;
+ public String bookName;
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- BookReturned(String bookName) {
+ public BookReturned(String bookName) {
this.bookName = bookName;
}
+ public BookReturned() {
+ }
+
+ public String getBookName() {
+ return this.bookName;
+ }
+
+ void setBookName(String bookName) {
+ this.bookName = bookName;
+ }
}
diff --git a/tests/samples-messaging-stream/src/main/java/com/example/DeleteSink.java b/tests/samples-messaging-stream/src/main/java/com/example/DeleteSink.java
index cf1476d8a2..bd9e84cd56 100644
--- a/tests/samples-messaging-stream/src/main/java/com/example/DeleteSink.java
+++ b/tests/samples-messaging-stream/src/main/java/com/example/DeleteSink.java
@@ -17,17 +17,16 @@
package com.example;
import org.springframework.cloud.stream.annotation.Input;
-import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.messaging.SubscribableChannel;
/**
* @author Marcin Grzejszczak
*/
-interface DeleteSink extends Sink {
+interface DeleteSink {
- String INPUT = "delete";
+ String MYINPUT = "delete";
- @Input(DeleteSink.INPUT)
+ @Input(DeleteSink.MYINPUT)
SubscribableChannel delete();
}
diff --git a/tests/samples-messaging-stream/src/main/java/com/example/StreamMessagingApplication.java b/tests/samples-messaging-stream/src/main/java/com/example/StreamMessagingApplication.java
index dd9f7c1d6f..7a1282253a 100644
--- a/tests/samples-messaging-stream/src/main/java/com/example/StreamMessagingApplication.java
+++ b/tests/samples-messaging-stream/src/main/java/com/example/StreamMessagingApplication.java
@@ -23,7 +23,7 @@ import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.stream.messaging.Source;
@SpringBootApplication
-@EnableBinding({ Source.class, Sink.class })
+@EnableBinding({ Source.class, DeleteSink.class, Sink.class })
class StreamMessagingApplication {
public static void main(String[] args) {
diff --git a/tests/samples-messaging-stream/src/main/resources/application.yml b/tests/samples-messaging-stream/src/main/resources/application.yml
index 1ff1cf7519..b993df506d 100644
--- a/tests/samples-messaging-stream/src/main/resources/application.yml
+++ b/tests/samples-messaging-stream/src/main/resources/application.yml
@@ -1,2 +1,4 @@
-spring.cloud.stream.bindings.input.destination: inputDestination
-spring.cloud.stream.bindings.output.destination: sentTo
\ No newline at end of file
+spring.cloud.stream.bindings.myinput.destination: inputDestination
+spring.cloud.stream.bindings.myinput.contentType: application/json
+spring.cloud.stream.bindings.output.destination: sentTo
+spring.cloud.stream.bindings.output.contentType: application/json
\ No newline at end of file
diff --git a/tests/spring-cloud-contract-stub-runner-amqp/pom.xml b/tests/spring-cloud-contract-stub-runner-amqp/pom.xml
index 5ecf019a23..4b92aa4bc3 100644
--- a/tests/spring-cloud-contract-stub-runner-amqp/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-amqp/pom.xml
@@ -71,7 +71,7 @@
- testCompile
+ compileTests
diff --git a/tests/spring-cloud-contract-stub-runner-boot-eureka/pom.xml b/tests/spring-cloud-contract-stub-runner-boot-eureka/pom.xml
index 3ac791fac9..49b15ca4c5 100644
--- a/tests/spring-cloud-contract-stub-runner-boot-eureka/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-boot-eureka/pom.xml
@@ -75,7 +75,7 @@
- testCompile
+ compileTests
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 a52d733f07..d088b69d28 100644
--- a/tests/spring-cloud-contract-stub-runner-boot-zookeeper/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-boot-zookeeper/pom.xml
@@ -75,7 +75,7 @@
- testCompile
+ compileTests
diff --git a/tests/spring-cloud-contract-stub-runner-integration/pom.xml b/tests/spring-cloud-contract-stub-runner-integration/pom.xml
index 2c1ca90901..e2c38afb70 100644
--- a/tests/spring-cloud-contract-stub-runner-integration/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-integration/pom.xml
@@ -72,7 +72,7 @@
- testCompile
+ compileTests
diff --git a/tests/spring-cloud-contract-stub-runner-moco-contract-jar/pom.xml b/tests/spring-cloud-contract-stub-runner-moco-contract-jar/pom.xml
index c2b6a8b8e6..02e002cb7c 100644
--- a/tests/spring-cloud-contract-stub-runner-moco-contract-jar/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-moco-contract-jar/pom.xml
@@ -1,6 +1,7 @@
-
+
4.0.0
org.springframework.cloud
@@ -23,13 +24,20 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ false
+
+
org.codehaus.gmavenplus
gmavenplus-plugin
- testCompile
+ compileTests
diff --git a/tests/spring-cloud-contract-stub-runner-moco/pom.xml b/tests/spring-cloud-contract-stub-runner-moco/pom.xml
index 9b132ee2d5..934b08a035 100644
--- a/tests/spring-cloud-contract-stub-runner-moco/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-moco/pom.xml
@@ -84,7 +84,7 @@
- testCompile
+ compileTests
diff --git a/tests/spring-cloud-contract-stub-runner-stream/pom.xml b/tests/spring-cloud-contract-stub-runner-stream/pom.xml
index 86f60e482d..d6690832f9 100644
--- a/tests/spring-cloud-contract-stub-runner-stream/pom.xml
+++ b/tests/spring-cloud-contract-stub-runner-stream/pom.xml
@@ -70,7 +70,7 @@
- testCompile
+ compileTests