diff --git a/.gitignore b/.gitignore index 8b71f67..7f995f3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,2 @@ *.iml target/ -.idea - -.mvn/wrapper/maven-wrapper.jar \ No newline at end of file diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index f3283b0..0000000 --- a/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,18 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you 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. -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..672c068 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,5 @@ +language: groovy + +jdk: + - openjdk8 + diff --git a/.woodpecker.yaml b/.woodpecker.yaml deleted file mode 100644 index 5921e36..0000000 --- a/.woodpecker.yaml +++ /dev/null @@ -1,59 +0,0 @@ -variables: - &maven_image maven:3.9.6-eclipse-temurin-11-alpine - -when: - evaluate: 'not (CI_COMMIT_MESSAGE contains "Release")' - -steps: - - name: build - image: *maven_image - commands: - - mvn -B clean install -DskipTests -Dmaven.test.skip - - name: test - image: *maven_image - commands: - - mvn -B -pl :mockserver-tests verify - - name: deploy to public - image: *maven_image - commands: - - mvn -B jar:jar deploy:deploy - secrets: [reposilite_user, reposilite_token] - when: - branch: [dev, master] - - name: deploy to releases - image: woodpeckerci/plugin-gitea-release - settings: - base-url: https://git.ztsh.eu - files: - - "mockserver-client/target/mockserver-client*.jar" - - "mockserver/target/mockserver-full.jar" - api_key: - from_secret: git_pat - when: - - event: tag - - name: tag docker image - image: woodpeckerci/plugin-docker-buildx - settings: - platforms: linux/amd64,linux/arm64/v8,linux/ppc64le,linux/s390x - repo: ztsheu/http-mock-server - registry: docker.io - tags: ${CI_COMMIT_TAG} - username: ztsheu - password: - from_secret: docker_pat - when: - - event: tag - - name: build docker image - image: woodpeckerci/plugin-docker-buildx - settings: - platforms: linux/amd64,linux/arm64/v8,linux/ppc64le,linux/s390x - repo: ztsheu/http-mock-server - registry: docker.io - tags: latest - username: ztsheu - password: - from_secret: docker_pat - when: - - event: tag - - event: push - branch: dev diff --git a/Dockerfile b/Dockerfile index 3250eed..87dd9dd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM eclipse-temurin:11.0.22_7-jre-jammy +FROM java:8 ADD mockserver/target/mockserver-full.jar /mockserver.jar @@ -8,4 +8,4 @@ RUN mkdir /externalSchema VOLUME /externalSchema -CMD java -cp /mockserver.jar:/externalSchema eu.ztsh.mockserver.server.Main +CMD java -cp /mockserver.jar:/externalSchema pl.touk.mockserver.server.Main diff --git a/README.md b/README.md index cb67c96..7439888 100644 --- a/README.md +++ b/README.md @@ -94,7 +94,7 @@ docker-compose up -d ### Docker repoository -Currently unavailable +Built image is available at https://hub.docker.com/r/alien11689/mockserver/ Create mock on server --------------------- @@ -132,7 +132,7 @@ remoteMockServer.addMock(new AddMock( Send POST request to localhost:/serverControl ```xml - + ... ... ... @@ -166,12 +166,12 @@ Send POST request to localhost:/serverControl - response - groovy closure as string which must evaluate to string which will be response of mock when predicate is satisfied, optional, default { _ -> '' } - soap - true or false, is request and response should be wrapped in soap Envelope and Body elements, default false - statusCode - integer, status code of response when predicate is satisfied, default 200 -- method - POST|PUT|DELETE|GET|TRACE|OPTION|HEAD|ANY_METHOD, expected http method of request, default `POST`, `ANY_METHOD` matches all HTTP methods +- method - POST|PUT|DELETE|GET|TRACE|OPTION|HEAD, expected http method of request, default POST - responseHeaders - groovyClosure as string which must evaluate to Map which will be added to response headers, default { _ -> \[:] } - schema - path to xsd schema file on mockserver classpath; default empty, so no vallidation of request is performed; if validation fails then response has got status 400 and response is raw message from validator - imports - list of imports for closures (each import is separate tag); `alias` is the name of `fullClassName` available in closure; `fullClassName` must be available on classpath of mock server - https - HTTPS configuration -- maxUses - limit uses of mock to the specific number, after that mock is marked as ignored (any negative number means unlimited - default, cannot set value to 0), after this number of invocation mock history is still available, but mock does not apply to any request +- maxUses - limit uses of mock to the specific number, after that mock is removed (any negative number means unlimited - default, cannot set value to 0) - cyclic - should mock be added after `maxUses` uses at the end of the mock list (by default false) #### HTTPS configuration @@ -200,13 +200,13 @@ In closures input parameter (called req) contains properties: Response if success: ```xml - + ``` Response with error message if failure: ```xml -... +... ``` Peek mock @@ -225,7 +225,7 @@ List mockEvents = remoteMockServer.peekMock('...') Send POST request to localhost:/serverControl ```xml - + ... ``` @@ -233,7 +233,7 @@ Send POST request to localhost:/serverControl Response if success: ```xml - + ... @@ -265,7 +265,7 @@ Response if success: Response with error message if failure: ```xml -... +... ``` Remove mock @@ -284,7 +284,7 @@ List mockEvents = remoteMockServer.removeMock('...', ...) Send POST request to localhost:/serverControl ```xml - + ... ... @@ -293,7 +293,7 @@ Send POST request to localhost:/serverControl Response if success (and skipReport not given or equal false): ```xml - + ... @@ -325,13 +325,13 @@ Response if success (and skipReport not given or equal false): If skipReport is set to true then response will be: ```xml - + ``` Response with error message if failure: ```xml -... +... ``` List mocks definitions @@ -425,7 +425,7 @@ This response could be saved to file and passed as it is during mock server crea Remote repository ----------------- -Mockserver is available at `philanthropist.ztsh.eu`. +Mockserver is available at `philanthropist.touk.pl`. Just add repository to maven pom: @@ -436,7 +436,7 @@ Just add repository to maven pom: ... touk - https://philanthropist.ztsh.eu/nexus/content/repositories/releases + https://philanthropist.touk.pl/nexus/content/repositories/releases ... diff --git a/mockserver-api/pom.xml b/mockserver-api/pom.xml index de5029a..27e8b15 100644 --- a/mockserver-api/pom.xml +++ b/mockserver-api/pom.xml @@ -1,21 +1,15 @@ - - 4.0.0 - + - eu.ztsh.mockserver http-mock-server - 3.0.0-SNAPSHOT + pl.touk.mockserver + 2.7.0 + 4.0.0 mockserver-api - - jakarta.xml.bind - jakarta.xml.bind-api - org.projectlombok lombok @@ -24,9 +18,19 @@ + + org.apache.maven.plugins + maven-compiler-plugin + 3.3 + + 1.8 + 1.8 + + org.codehaus.mojo jaxb2-maven-plugin + 2.2 xjc diff --git a/mockserver-api/src/main/xjb/binding.xjb b/mockserver-api/src/main/xjb/binding.xjb index fdf2585..a735d24 100644 --- a/mockserver-api/src/main/xjb/binding.xjb +++ b/mockserver-api/src/main/xjb/binding.xjb @@ -1,9 +1,10 @@ - - - - - - - + + + + + + + + \ No newline at end of file diff --git a/mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/common.xsd b/mockserver-api/src/main/xsd/pl/touk/mockserver/api/common.xsd similarity index 91% rename from mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/common.xsd rename to mockserver-api/src/main/xsd/pl/touk/mockserver/api/common.xsd index 6dac2a9..673be7d 100644 --- a/mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/common.xsd +++ b/mockserver-api/src/main/xsd/pl/touk/mockserver/api/common.xsd @@ -1,5 +1,5 @@ - + @@ -11,7 +11,6 @@ - diff --git a/mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/request.xsd b/mockserver-api/src/main/xsd/pl/touk/mockserver/api/request.xsd similarity index 90% rename from mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/request.xsd rename to mockserver-api/src/main/xsd/pl/touk/mockserver/api/request.xsd index 891aebf..25287c8 100644 --- a/mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/request.xsd +++ b/mockserver-api/src/main/xsd/pl/touk/mockserver/api/request.xsd @@ -1,7 +1,7 @@ - + - + diff --git a/mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/response.xsd b/mockserver-api/src/main/xsd/pl/touk/mockserver/api/response.xsd similarity index 95% rename from mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/response.xsd rename to mockserver-api/src/main/xsd/pl/touk/mockserver/api/response.xsd index 66d4566..1f96dc8 100644 --- a/mockserver-api/src/main/xsd/eu/ztsh/mockserver/api/response.xsd +++ b/mockserver-api/src/main/xsd/pl/touk/mockserver/api/response.xsd @@ -1,7 +1,7 @@ - + - + diff --git a/mockserver-client/pom.xml b/mockserver-client/pom.xml index cb7acfb..22a12d7 100644 --- a/mockserver-client/pom.xml +++ b/mockserver-client/pom.xml @@ -1,44 +1,22 @@ - - 4.0.0 - + - eu.ztsh.mockserver http-mock-server - 3.0.0-SNAPSHOT + pl.touk.mockserver + 2.7.0 + 4.0.0 mockserver-client + + clean install + - eu.ztsh.mockserver - mockserver-api + org.codehaus.groovy + groovy-all - - - org.apache.groovy - groovy - - - org.apache.groovy - groovy-json - - - org.apache.groovy - groovy-xml - - - - org.glassfish.jaxb - jaxb-core - - - org.glassfish.jaxb - jaxb-runtime - - org.apache.httpcomponents httpclient @@ -47,15 +25,9 @@ org.apache.commons commons-lang3 + + pl.touk.mockserver + mockserver-api + - - - - - org.codehaus.gmavenplus - gmavenplus-plugin - - - - diff --git a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/InvalidMockDefinition.groovy b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/InvalidMockDefinition.groovy similarity index 86% rename from mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/InvalidMockDefinition.groovy rename to mockserver-client/src/main/groovy/pl/touk/mockserver/client/InvalidMockDefinition.groovy index a39ef77..f95b584 100644 --- a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/InvalidMockDefinition.groovy +++ b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/InvalidMockDefinition.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.client +package pl.touk.mockserver.client import groovy.transform.CompileStatic import groovy.transform.TypeChecked diff --git a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/InvalidMockRequestSchema.groovy b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/InvalidMockRequestSchema.groovy similarity index 82% rename from mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/InvalidMockRequestSchema.groovy rename to mockserver-client/src/main/groovy/pl/touk/mockserver/client/InvalidMockRequestSchema.groovy index b1de96f..ff3d401 100644 --- a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/InvalidMockRequestSchema.groovy +++ b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/InvalidMockRequestSchema.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.client +package pl.touk.mockserver.client import groovy.transform.CompileStatic import groovy.transform.TypeChecked diff --git a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/MockAlreadyExists.groovy b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/MockAlreadyExists.groovy similarity index 82% rename from mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/MockAlreadyExists.groovy rename to mockserver-client/src/main/groovy/pl/touk/mockserver/client/MockAlreadyExists.groovy index 40d5dce..f0c00a9 100644 --- a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/MockAlreadyExists.groovy +++ b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/MockAlreadyExists.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.client +package pl.touk.mockserver.client import groovy.transform.CompileStatic import groovy.transform.TypeChecked diff --git a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/MockDoesNotExist.groovy b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/MockDoesNotExist.groovy similarity index 82% rename from mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/MockDoesNotExist.groovy rename to mockserver-client/src/main/groovy/pl/touk/mockserver/client/MockDoesNotExist.groovy index fe93dc0..02d0bee 100644 --- a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/MockDoesNotExist.groovy +++ b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/MockDoesNotExist.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.client +package pl.touk.mockserver.client import groovy.transform.CompileStatic import groovy.transform.TypeChecked diff --git a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/RemoteMockServer.groovy b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/RemoteMockServer.groovy similarity index 85% rename from mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/RemoteMockServer.groovy rename to mockserver-client/src/main/groovy/pl/touk/mockserver/client/RemoteMockServer.groovy index f594614..91ebc33 100644 --- a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/RemoteMockServer.groovy +++ b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/RemoteMockServer.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.client +package pl.touk.mockserver.client import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.HttpGet @@ -7,17 +7,17 @@ import org.apache.http.entity.ContentType import org.apache.http.entity.StringEntity import org.apache.http.impl.client.CloseableHttpClient import org.apache.http.impl.client.HttpClients -import eu.ztsh.mockserver.api.request.AddMock -import eu.ztsh.mockserver.api.request.MockServerRequest -import eu.ztsh.mockserver.api.request.PeekMock -import eu.ztsh.mockserver.api.request.RemoveMock -import eu.ztsh.mockserver.api.response.MockEventReport -import eu.ztsh.mockserver.api.response.MockPeeked -import eu.ztsh.mockserver.api.response.MockRemoved -import eu.ztsh.mockserver.api.response.MockReport -import eu.ztsh.mockserver.api.response.Mocks +import pl.touk.mockserver.api.request.AddMock +import pl.touk.mockserver.api.request.MockServerRequest +import pl.touk.mockserver.api.request.PeekMock +import pl.touk.mockserver.api.request.RemoveMock +import pl.touk.mockserver.api.response.MockEventReport +import pl.touk.mockserver.api.response.MockPeeked +import pl.touk.mockserver.api.response.MockRemoved +import pl.touk.mockserver.api.response.MockReport +import pl.touk.mockserver.api.response.Mocks -import jakarta.xml.bind.JAXBContext +import javax.xml.bind.JAXBContext class RemoteMockServer { private final String address diff --git a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/Util.groovy b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/Util.groovy similarity index 88% rename from mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/Util.groovy rename to mockserver-client/src/main/groovy/pl/touk/mockserver/client/Util.groovy index e79e0c3..3a427d6 100644 --- a/mockserver-client/src/main/groovy/eu/ztsh/mockserver/client/Util.groovy +++ b/mockserver-client/src/main/groovy/pl/touk/mockserver/client/Util.groovy @@ -1,18 +1,17 @@ -package eu.ztsh.mockserver.client +package pl.touk.mockserver.client import groovy.json.JsonSlurper import groovy.transform.CompileStatic import groovy.transform.TypeChecked -import groovy.xml.XmlSlurper -import groovy.xml.slurpersupport.GPathResult +import groovy.util.slurpersupport.GPathResult import org.apache.http.HttpEntity import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.util.EntityUtils -import eu.ztsh.mockserver.api.response.ExceptionOccured -import eu.ztsh.mockserver.api.response.MockAdded -import eu.ztsh.mockserver.api.response.MockServerResponse +import pl.touk.mockserver.api.response.ExceptionOccured +import pl.touk.mockserver.api.response.MockAdded +import pl.touk.mockserver.api.response.MockServerResponse -import jakarta.xml.bind.JAXBContext +import javax.xml.bind.JAXBContext @CompileStatic @TypeChecked diff --git a/mockserver-tests/pom.xml b/mockserver-tests/pom.xml index 2506a7a..afac34e 100644 --- a/mockserver-tests/pom.xml +++ b/mockserver-tests/pom.xml @@ -1,68 +1,53 @@ - - 4.0.0 - + http-mock-server - eu.ztsh.mockserver - 3.0.0-SNAPSHOT + pl.touk.mockserver + 2.7.0 + 4.0.0 mockserver-tests + + clean install + + - eu.ztsh.mockserver - mockserver + org.codehaus.groovy + groovy-all - eu.ztsh.mockserver - mockserver-client + org.spockframework + spock-core - - - org.apache.groovy - groovy - - - - org.apache.httpcomponents - httpclient - - org.slf4j slf4j-api ch.qos.logback - logback-core + logback-classic - - org.spockframework - spock-core + org.apache.httpcomponents + httpclient + + + pl.touk.mockserver + mockserver + ${project.version} + + + pl.touk.mockserver + mockserver-client + ${project.version} + + + info.solidsoft.spock + spock-global-unroll - - - - org.codehaus.gmavenplus - gmavenplus-plugin - - - org.apache.maven.plugins - maven-surefire-plugin - 3.2.5 - - - **/*Test.java - - - - - - diff --git a/mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerHttpsTest.groovy b/mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerHttpsTest.groovy similarity index 93% rename from mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerHttpsTest.groovy rename to mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerHttpsTest.groovy index e1ecd95..8d6eff8 100644 --- a/mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerHttpsTest.groovy +++ b/mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerHttpsTest.groovy @@ -1,11 +1,6 @@ -package eu.ztsh.mockserver.tests +package pl.touk.mockserver.tests -import eu.ztsh.mockserver.api.common.Https -import eu.ztsh.mockserver.api.request.AddMock -import eu.ztsh.mockserver.client.RemoteMockServer -import eu.ztsh.mockserver.client.Util -import eu.ztsh.mockserver.server.HttpMockServer -import groovy.xml.slurpersupport.GPathResult +import groovy.util.slurpersupport.GPathResult import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.HttpPost import org.apache.http.conn.ssl.SSLConnectionSocketFactory @@ -14,8 +9,12 @@ import org.apache.http.entity.ContentType import org.apache.http.entity.StringEntity import org.apache.http.impl.client.CloseableHttpClient import org.apache.http.impl.client.HttpClients +import pl.touk.mockserver.api.common.Https +import pl.touk.mockserver.api.request.AddMock +import pl.touk.mockserver.client.RemoteMockServer +import pl.touk.mockserver.client.Util +import pl.touk.mockserver.server.HttpMockServer import spock.lang.AutoCleanup -import spock.lang.Ignore import spock.lang.Shared import spock.lang.Specification @@ -23,7 +22,6 @@ import javax.net.ssl.SSLContext import javax.net.ssl.SSLHandshakeException import java.security.KeyStore -@Ignore class MockServerHttpsTest extends Specification { RemoteMockServer remoteMockServer = new RemoteMockServer('localhost', 19000) @@ -48,7 +46,6 @@ class MockServerHttpsTest extends Specification { .loadTrustMaterial(trustStore()) .build() - @Ignore("TODO: SSL peer shut down incorrectly") def 'should handle HTTPS server' () { given: remoteMockServer.addMock(new AddMock( @@ -73,7 +70,6 @@ class MockServerHttpsTest extends Specification { restPostResponse.name() == 'goodResponse-request' } - @Ignore("TODO: SSL peer shut down incorrectly") def 'should handle HTTPS server with client auth' () { given: remoteMockServer.addMock(new AddMock( diff --git a/mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerIntegrationTest.groovy b/mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerIntegrationTest.groovy similarity index 96% rename from mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerIntegrationTest.groovy rename to mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerIntegrationTest.groovy index 038a143..e9f2d42 100644 --- a/mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerIntegrationTest.groovy +++ b/mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerIntegrationTest.groovy @@ -1,6 +1,6 @@ -package eu.ztsh.mockserver.tests +package pl.touk.mockserver.tests -import groovy.xml.slurpersupport.GPathResult +import groovy.util.slurpersupport.GPathResult import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.HttpDelete import org.apache.http.client.methods.HttpGet @@ -15,20 +15,20 @@ import org.apache.http.entity.StringEntity import org.apache.http.impl.client.CloseableHttpClient import org.apache.http.impl.client.HttpClients import org.apache.http.util.EntityUtils -import eu.ztsh.mockserver.api.common.ImportAlias -import eu.ztsh.mockserver.api.common.Method -import eu.ztsh.mockserver.api.request.AddMock -import eu.ztsh.mockserver.api.response.MockEventReport -import eu.ztsh.mockserver.api.response.MockReport -import eu.ztsh.mockserver.client.InvalidMockDefinition -import eu.ztsh.mockserver.client.InvalidMockRequestSchema -import eu.ztsh.mockserver.client.MockAlreadyExists -import eu.ztsh.mockserver.client.MockDoesNotExist -import eu.ztsh.mockserver.client.RemoteMockServer -import eu.ztsh.mockserver.client.Util -import eu.ztsh.mockserver.server.HttpMockServer +import pl.touk.mockserver.api.common.ImportAlias +import pl.touk.mockserver.api.common.Method +import pl.touk.mockserver.api.request.AddMock +import pl.touk.mockserver.api.response.MockEventReport +import pl.touk.mockserver.api.response.MockReport +import pl.touk.mockserver.client.InvalidMockDefinition +import pl.touk.mockserver.client.InvalidMockRequestSchema +import pl.touk.mockserver.client.MockAlreadyExists +import pl.touk.mockserver.client.MockDoesNotExist +import pl.touk.mockserver.client.RemoteMockServer +import pl.touk.mockserver.client.Util +import pl.touk.mockserver.server.HttpMockServer import spock.lang.AutoCleanup -import spock.lang.Ignore +import spock.lang.Shared import spock.lang.Specification class MockServerIntegrationTest extends Specification { @@ -38,6 +38,7 @@ class MockServerIntegrationTest extends Specification { @AutoCleanup('stop') HttpMockServer httpMockServer + @Shared CloseableHttpClient client = HttpClients.createDefault() def setup() { @@ -66,7 +67,6 @@ class MockServerIntegrationTest extends Specification { remoteMockServer.removeMock('testRest')?.size() == 1 } - @Ignore("TODO: restPostResponse.name()") def "should add working rest mock on endpoint with utf"() { expect: remoteMockServer.addMock(new AddMock( @@ -1154,30 +1154,4 @@ class MockServerIntegrationTest extends Specification { 'test/other' | 'test/other' '/test/other' | 'test/other' } - - def 'should match any method'() { - given: - String name = "testRest-${UUID.randomUUID().toString()}" - remoteMockServer.addMock(new AddMock( - name: name, - path: 'any-method', - port: 9999, - statusCode: 201, - soap: false, - method: Method.ANY_METHOD - )) - when: - CloseableHttpResponse response = client.execute(req) - then: - response.statusLine.statusCode == 201 - Util.consumeResponse(response) - cleanup: - remoteMockServer.removeMock(name) - where: - req << [ - new HttpGet('http://localhost:9999/any-method'), - new HttpPost('http://localhost:9999/any-method'), - new HttpPatch('http://localhost:9999/any-method') - ] - } } diff --git a/mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerMaxUsesTest.groovy b/mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerMaxUsesTest.groovy similarity index 97% rename from mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerMaxUsesTest.groovy rename to mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerMaxUsesTest.groovy index eda365c..08d2c12 100644 --- a/mockserver-tests/src/test/groovy/eu/ztsh/mockserver/tests/MockServerMaxUsesTest.groovy +++ b/mockserver-tests/src/test/groovy/pl/touk/mockserver/tests/MockServerMaxUsesTest.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.tests +package pl.touk.mockserver.tests import org.apache.http.client.methods.CloseableHttpResponse @@ -7,10 +7,11 @@ import org.apache.http.entity.ContentType import org.apache.http.entity.StringEntity import org.apache.http.impl.client.CloseableHttpClient import org.apache.http.impl.client.HttpClients -import eu.ztsh.mockserver.api.request.AddMock -import eu.ztsh.mockserver.client.RemoteMockServer -import eu.ztsh.mockserver.server.HttpMockServer +import pl.touk.mockserver.api.request.AddMock +import pl.touk.mockserver.client.RemoteMockServer +import pl.touk.mockserver.server.HttpMockServer import spock.lang.AutoCleanup +import spock.lang.Shared import spock.lang.Specification class MockServerMaxUsesTest extends Specification { @@ -20,6 +21,7 @@ class MockServerMaxUsesTest extends Specification { @AutoCleanup('stop') HttpMockServer httpMockServer + @Shared CloseableHttpClient client = HttpClients.createDefault() def setup() { @@ -94,8 +96,6 @@ class MockServerMaxUsesTest extends Specification { CloseableHttpResponse response3 = client.execute(restPost) then:'no mock should be found' response3.statusLine.statusCode == 404 - and:'mock should exist' - remoteMockServer.listMocks().find { it.name == 'mock1' } != null } def 'should return two mocks in cyclic order'() { diff --git a/mockserver/pom.xml b/mockserver/pom.xml index d097048..88302f4 100644 --- a/mockserver/pom.xml +++ b/mockserver/pom.xml @@ -1,76 +1,46 @@ - - 4.0.0 - + - eu.ztsh.mockserver http-mock-server - 3.0.0-SNAPSHOT + pl.touk.mockserver + 2.7.0 + 4.0.0 mockserver - eu.ztsh.mockserver - mockserver-api + org.codehaus.groovy + groovy-all - - - org.apache.groovy - groovy - - - org.apache.groovy - groovy-json - - - org.apache.groovy - groovy-xml - - - - org.glassfish.jaxb - jaxb-core - - - org.glassfish.jaxb - jaxb-runtime - - - - org.apache.commons - commons-lang3 - - org.slf4j slf4j-api ch.qos.logback - logback-core + logback-classic - ch.qos.logback - logback-classic + org.apache.commons + commons-lang3 + + + pl.touk.mockserver + mockserver-api clean package assembly:single install - - org.codehaus.gmavenplus - gmavenplus-plugin - maven-assembly-plugin - eu.ztsh.mockserver.server.Main + pl.touk.mockserver.server.Main @@ -79,17 +49,16 @@ mockserver-full false - + - create-archive - package - - single - - - + create-archive + package + + single + + + - diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/ContextExecutor.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/ContextExecutor.groovy similarity index 93% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/ContextExecutor.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/ContextExecutor.groovy index 6023a1c..7b31b22 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/ContextExecutor.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/ContextExecutor.groovy @@ -1,9 +1,9 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import com.sun.net.httpserver.HttpExchange import groovy.transform.PackageScope import groovy.util.logging.Slf4j -import eu.ztsh.mockserver.api.common.Method +import pl.touk.mockserver.api.common.Method import java.util.concurrent.CopyOnWriteArrayList @@ -97,15 +97,17 @@ class ContextExecutor { private synchronized void handleMaxUses(Mock mock) { if (mock.hasLimitedUses()) { mock.decrementUses() - resetIfNeeded(mock) + removeAndResetIfNeeded(mock) log.debug("Uses left ${mock.usesLeft} of ${mock.maxUses} (is cyclic: ${mock.cyclic})") } } - private void resetIfNeeded(Mock mock) { + private void removeAndResetIfNeeded(Mock mock) { + if (mock.shouldBeRemoved()) { + mocks.remove(mock) + } if (mock.shouldUsesBeReset()) { mock.resetUses() - mocks.remove(mock) mocks.add(mock) } } diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpMockServer.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/HttpMockServer.groovy similarity index 69% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpMockServer.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/HttpMockServer.groovy index eaae94d..f0352ae 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpMockServer.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/HttpMockServer.groovy @@ -1,32 +1,32 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import com.sun.net.httpserver.HttpExchange import groovy.util.logging.Slf4j -import eu.ztsh.mockserver.api.common.Https -import eu.ztsh.mockserver.api.common.ImportAlias -import eu.ztsh.mockserver.api.common.Method -import eu.ztsh.mockserver.api.request.AddMock -import eu.ztsh.mockserver.api.request.MockServerRequest -import eu.ztsh.mockserver.api.request.PeekMock -import eu.ztsh.mockserver.api.request.RemoveMock -import eu.ztsh.mockserver.api.response.ExceptionOccured -import eu.ztsh.mockserver.api.response.MockAdded -import eu.ztsh.mockserver.api.response.MockEventReport -import eu.ztsh.mockserver.api.response.MockPeeked -import eu.ztsh.mockserver.api.response.MockRemoved -import eu.ztsh.mockserver.api.response.MockReport -import eu.ztsh.mockserver.api.response.MockRequestReport -import eu.ztsh.mockserver.api.response.MockResponseReport -import eu.ztsh.mockserver.api.response.Mocks -import eu.ztsh.mockserver.api.response.Parameter +import pl.touk.mockserver.api.common.Https +import pl.touk.mockserver.api.common.ImportAlias +import pl.touk.mockserver.api.common.Method +import pl.touk.mockserver.api.request.AddMock +import pl.touk.mockserver.api.request.MockServerRequest +import pl.touk.mockserver.api.request.PeekMock +import pl.touk.mockserver.api.request.RemoveMock +import pl.touk.mockserver.api.response.ExceptionOccured +import pl.touk.mockserver.api.response.MockAdded +import pl.touk.mockserver.api.response.MockEventReport +import pl.touk.mockserver.api.response.MockPeeked +import pl.touk.mockserver.api.response.MockRemoved +import pl.touk.mockserver.api.response.MockReport +import pl.touk.mockserver.api.response.MockRequestReport +import pl.touk.mockserver.api.response.MockResponseReport +import pl.touk.mockserver.api.response.Mocks +import pl.touk.mockserver.api.response.Parameter -import jakarta.xml.bind.JAXBContext +import javax.xml.bind.JAXBContext import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.CopyOnWriteArraySet import java.util.concurrent.Executor import java.util.concurrent.Executors -import static eu.ztsh.mockserver.server.Util.createResponse +import static pl.touk.mockserver.server.Util.createResponse @Slf4j class HttpMockServer { @@ -79,22 +79,22 @@ class HttpMockServer { void listMocks(HttpExchange ex) { Mocks mockListing = new Mocks( - mocks: listMocks().collect { - new MockReport( - name: it.name, - path: it.path, - port: it.port, - predicate: it.predicateClosureText, - response: it.responseClosureText, - responseHeaders: it.responseHeadersClosureText, - soap: it.soap, - method: it.method, - statusCode: it.statusCode as int, - schema: it.schema, - imports: it.imports.collect { new ImportAlias(alias: it.key, fullClassName: it.value) }, - preserveHistory: it.preserveHistory - ) - } + mocks: listMocks().collect { + new MockReport( + name: it.name, + path: it.path, + port: it.port, + predicate: it.predicateClosureText, + response: it.responseClosureText, + responseHeaders: it.responseHeadersClosureText, + soap: it.soap, + method: it.method, + statusCode: it.statusCode as int, + schema: it.schema, + imports: it.imports.collect { new ImportAlias(alias: it.key, fullClassName: it.value) }, + preserveHistory: it.preserveHistory + ) + } ) createResponse(ex, mockListing, 200) } @@ -182,12 +182,12 @@ class HttpMockServer { mock.preserveHistory = co.preserveHistory != false if (co.https) { mock.https = new Https( - keystorePath: co.https.keystorePath ?: null, - keystorePassword: co.https.keystorePassword, - keyPassword: co.https.keyPassword, - truststorePath: co.https.truststorePath, - truststorePassword: co.https.truststorePassword, - requireClientAuth: co.https?.requireClientAuth?.asBoolean() ?: false + keystorePath: co.https.keystorePath ?: null, + keystorePassword: co.https.keystorePassword, + keyPassword: co.https.keyPassword, + truststorePath: co.https.truststorePath, + truststorePassword: co.https.truststorePassword, + requireClientAuth: co.https?.requireClientAuth?.asBoolean() ?: false ) } mock.maxUses = co.maxUses ?: null @@ -217,7 +217,7 @@ class HttpMockServer { mockNames.remove(name) configuration.remove(name) MockRemoved mockRemoved = new MockRemoved( - mockEvents: createMockEventReports(mockEvents) + mockEvents: createMockEventReports(mockEvents) ) createResponse(ex, mockRemoved, 200) } @@ -225,23 +225,23 @@ class HttpMockServer { private static List createMockEventReports(List mockEvents) { return mockEvents.collect { new MockEventReport( - request: new MockRequestReport( - text: it.request.text, - headers: new MockRequestReport.Headers(headers: it.request.headers.collect { - new Parameter(name: it.key, value: it.value) - }), - queryParams: new MockRequestReport.QueryParams(queryParams: it.request.query.collect { - new Parameter(name: it.key, value: it.value) - }), - path: new MockRequestReport.Path(pathParts: it.request.path) - ), - response: new MockResponseReport( - statusCode: it.response.statusCode, - text: it.response.text, - headers: new MockResponseReport.Headers(headers: it.response.headers.collect { - new Parameter(name: it.key, value: it.value) - }) - ) + request: new MockRequestReport( + text: it.request.text, + headers: new MockRequestReport.Headers(headers: it.request.headers.collect { + new Parameter(name: it.key, value: it.value) + }), + queryParams: new MockRequestReport.QueryParams(queryParams: it.request.query.collect { + new Parameter(name: it.key, value: it.value) + }), + path: new MockRequestReport.Path(pathParts: it.request.path) + ), + response: new MockResponseReport( + statusCode: it.response.statusCode, + text: it.response.text, + headers: new MockResponseReport.Headers(headers: it.response.headers.collect { + new Parameter(name: it.key, value: it.value) + }) + ) ) } } @@ -254,7 +254,7 @@ class HttpMockServer { log.trace("Peeking mock $name") List mockEvents = childServers.values().collect { it.peekMock(name) }.flatten() as List MockPeeked mockPeeked = new MockPeeked( - mockEvents: createMockEventReports(mockEvents) + mockEvents: createMockEventReports(mockEvents) ) createResponse(ex, mockPeeked, 200) } diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpServerWrapper.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/HttpServerWrapper.groovy similarity index 97% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpServerWrapper.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/HttpServerWrapper.groovy index 5d33156..c9e63e9 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpServerWrapper.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/HttpServerWrapper.groovy @@ -1,11 +1,11 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import com.sun.net.httpserver.HttpHandler import com.sun.net.httpserver.HttpServer import com.sun.net.httpserver.HttpsServer import groovy.transform.PackageScope import groovy.util.logging.Slf4j -import eu.ztsh.mockserver.api.common.Https +import pl.touk.mockserver.api.common.Https import javax.net.ssl.KeyManager import javax.net.ssl.KeyManagerFactory diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpsConfig.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/HttpsConfig.groovy similarity index 91% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpsConfig.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/HttpsConfig.groovy index 9d00714..68b5550 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/HttpsConfig.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/HttpsConfig.groovy @@ -1,9 +1,9 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import com.sun.net.httpserver.HttpsConfigurator import com.sun.net.httpserver.HttpsParameters import groovy.transform.CompileStatic -import eu.ztsh.mockserver.api.common.Https +import pl.touk.mockserver.api.common.Https import javax.net.ssl.SSLContext import javax.net.ssl.SSLParameters diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/Main.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/Main.groovy similarity index 96% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/Main.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/Main.groovy index 916569e..0b8d42a 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/Main.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/Main.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import groovy.util.logging.Slf4j diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/Mock.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/Mock.groovy similarity index 94% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/Mock.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/Mock.groovy index 821471c..0a4fa42 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/Mock.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/Mock.groovy @@ -1,12 +1,12 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import groovy.transform.EqualsAndHashCode import groovy.transform.PackageScope import groovy.util.logging.Slf4j import org.codehaus.groovy.control.CompilerConfiguration import org.codehaus.groovy.control.customizers.ImportCustomizer -import eu.ztsh.mockserver.api.common.Https -import eu.ztsh.mockserver.api.common.Method +import pl.touk.mockserver.api.common.Https +import pl.touk.mockserver.api.common.Method import javax.xml.XMLConstants import javax.xml.transform.stream.StreamSource @@ -59,8 +59,7 @@ class Mock implements Comparable { } boolean match(Method method, MockRequest request) { - boolean usesCondition = hasLimitedUses() ? usesLeft > 0 : true - return usesCondition && (this.method == method || this.method == Method.ANY_METHOD) && predicate(request) + return this.method == method && predicate(request) } MockResponse apply(MockRequest request) { @@ -189,8 +188,12 @@ class Mock implements Comparable { usesLeft-- } + boolean shouldBeRemoved() { + return hasLimitedUses() && usesLeft <= 0 + } + boolean shouldUsesBeReset() { - return hasLimitedUses() && usesLeft <= 0 && cyclic + return shouldBeRemoved() && cyclic } void resetUses() { diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockEvent.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/MockEvent.groovy similarity index 88% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockEvent.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/MockEvent.groovy index 9c429f1..97a46a2 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockEvent.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/MockEvent.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import groovy.transform.PackageScope diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockRequest.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/MockRequest.groovy similarity index 95% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockRequest.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/MockRequest.groovy index a714afe..3657131 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockRequest.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/MockRequest.groovy @@ -1,10 +1,9 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import com.sun.net.httpserver.Headers import groovy.json.JsonSlurper import groovy.transform.PackageScope -import groovy.xml.XmlSlurper -import groovy.xml.slurpersupport.GPathResult +import groovy.util.slurpersupport.GPathResult import groovy.xml.XmlUtil @PackageScope diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockResponse.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/MockResponse.groovy similarity index 90% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockResponse.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/MockResponse.groovy index 260acce..913f9f3 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/MockResponse.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/MockResponse.groovy @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import groovy.transform.PackageScope diff --git a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/Util.groovy b/mockserver/src/main/groovy/pl/touk/mockserver/server/Util.groovy similarity index 89% rename from mockserver/src/main/groovy/eu/ztsh/mockserver/server/Util.groovy rename to mockserver/src/main/groovy/pl/touk/mockserver/server/Util.groovy index c51d1f0..3864afa 100644 --- a/mockserver/src/main/groovy/eu/ztsh/mockserver/server/Util.groovy +++ b/mockserver/src/main/groovy/pl/touk/mockserver/server/Util.groovy @@ -1,9 +1,9 @@ -package eu.ztsh.mockserver.server +package pl.touk.mockserver.server import com.sun.net.httpserver.HttpExchange -import eu.ztsh.mockserver.api.response.MockAdded +import pl.touk.mockserver.api.response.MockAdded -import jakarta.xml.bind.JAXBContext +import javax.xml.bind.JAXBContext class Util { diff --git a/mvnw b/mvnw deleted file mode 100755 index 8d937f4..0000000 --- a/mvnw +++ /dev/null @@ -1,308 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you 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. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Apache Maven Wrapper startup batch script, version 3.2.0 -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "$(uname)" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - JAVA_HOME="$(/usr/libexec/java_home)"; export JAVA_HOME - else - JAVA_HOME="/Library/Java/Home"; export JAVA_HOME - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=$(java-config --jre-home) - fi -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME=$(cygpath --unix "$JAVA_HOME") - [ -n "$CLASSPATH" ] && - CLASSPATH=$(cygpath --path --unix "$CLASSPATH") -fi - -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$JAVA_HOME" ] && [ -d "$JAVA_HOME" ] && - JAVA_HOME="$(cd "$JAVA_HOME" || (echo "cannot cd into $JAVA_HOME."; exit 1); pwd)" -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="$(which javac)" - if [ -n "$javaExecutable" ] && ! [ "$(expr "\"$javaExecutable\"" : '\([^ ]*\)')" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=$(which readlink) - if [ ! "$(expr "$readLink" : '\([^ ]*\)')" = "no" ]; then - if $darwin ; then - javaHome="$(dirname "\"$javaExecutable\"")" - javaExecutable="$(cd "\"$javaHome\"" && pwd -P)/javac" - else - javaExecutable="$(readlink -f "\"$javaExecutable\"")" - fi - javaHome="$(dirname "\"$javaExecutable\"")" - javaHome=$(expr "$javaHome" : '\(.*\)/bin') - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="$(\unset -f command 2>/dev/null; \command -v java)" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=$(cd "$wdir/.." || exit 1; pwd) - fi - # end of workaround - done - printf '%s' "$(cd "$basedir" || exit 1; pwd)" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - # Remove \r in case we run on Windows within Git Bash - # and check out the repository with auto CRLF management - # enabled. Otherwise, we may read lines that are delimited with - # \r\n and produce $'-Xarg\r' rather than -Xarg due to word - # splitting rules. - tr -s '\r\n' ' ' < "$1" - fi -} - -log() { - if [ "$MVNW_VERBOSE" = true ]; then - printf '%s\n' "$1" - fi -} - -BASE_DIR=$(find_maven_basedir "$(dirname "$0")") -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR -log "$MAVEN_PROJECTBASEDIR" - -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -wrapperJarPath="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" -if [ -r "$wrapperJarPath" ]; then - log "Found $wrapperJarPath" -else - log "Couldn't find $wrapperJarPath, downloading it ..." - - if [ -n "$MVNW_REPOURL" ]; then - wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - else - wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - fi - while IFS="=" read -r key value; do - # Remove '\r' from value to allow usage on windows as IFS does not consider '\r' as a separator ( considers space, tab, new line ('\n'), and custom '=' ) - safeValue=$(echo "$value" | tr -d '\r') - case "$key" in (wrapperUrl) wrapperUrl="$safeValue"; break ;; - esac - done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" - log "Downloading from: $wrapperUrl" - - if $cygwin; then - wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath") - fi - - if command -v wget > /dev/null; then - log "Found wget ... using wget" - [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet" - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - log "Found curl ... using curl" - [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent" - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" - else - curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" - fi - else - log "Falling back to using Java to download" - javaSource="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.java" - javaClass="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.class" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaSource=$(cygpath --path --windows "$javaSource") - javaClass=$(cygpath --path --windows "$javaClass") - fi - if [ -e "$javaSource" ]; then - if [ ! -e "$javaClass" ]; then - log " - Compiling MavenWrapperDownloader.java ..." - ("$JAVA_HOME/bin/javac" "$javaSource") - fi - if [ -e "$javaClass" ]; then - log " - Running MavenWrapperDownloader.java ..." - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$wrapperUrl" "$wrapperJarPath") || rm -f "$wrapperJarPath" - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -# If specified, validate the SHA-256 sum of the Maven wrapper jar file -wrapperSha256Sum="" -while IFS="=" read -r key value; do - case "$key" in (wrapperSha256Sum) wrapperSha256Sum=$value; break ;; - esac -done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" -if [ -n "$wrapperSha256Sum" ]; then - wrapperSha256Result=false - if command -v sha256sum > /dev/null; then - if echo "$wrapperSha256Sum $wrapperJarPath" | sha256sum -c > /dev/null 2>&1; then - wrapperSha256Result=true - fi - elif command -v shasum > /dev/null; then - if echo "$wrapperSha256Sum $wrapperJarPath" | shasum -a 256 -c > /dev/null 2>&1; then - wrapperSha256Result=true - fi - else - echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." - echo "Please install either command, or disable validation by removing 'wrapperSha256Sum' from your maven-wrapper.properties." - exit 1 - fi - if [ $wrapperSha256Result = false ]; then - echo "Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised." >&2 - echo "Investigate or delete $wrapperJarPath to attempt a clean download." >&2 - echo "If you updated your Maven version, you need to update the specified wrapperSha256Sum property." >&2 - exit 1 - fi -fi - -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME") - [ -n "$CLASSPATH" ] && - CLASSPATH=$(cygpath --path --windows "$CLASSPATH") - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR") -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $*" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -# shellcheck disable=SC2086 # safe args -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/mvnw.cmd b/mvnw.cmd deleted file mode 100644 index f80fbad..0000000 --- a/mvnw.cmd +++ /dev/null @@ -1,205 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM http://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Apache Maven Wrapper startup batch script, version 3.2.0 -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %WRAPPER_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM If specified, validate the SHA-256 sum of the Maven wrapper jar file -SET WRAPPER_SHA_256_SUM="" -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperSha256Sum" SET WRAPPER_SHA_256_SUM=%%B -) -IF NOT %WRAPPER_SHA_256_SUM%=="" ( - powershell -Command "&{"^ - "$hash = (Get-FileHash \"%WRAPPER_JAR%\" -Algorithm SHA256).Hash.ToLower();"^ - "If('%WRAPPER_SHA_256_SUM%' -ne $hash){"^ - " Write-Output 'Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised.';"^ - " Write-Output 'Investigate or delete %WRAPPER_JAR% to attempt a clean download.';"^ - " Write-Output 'If you updated your Maven version, you need to update the specified wrapperSha256Sum property.';"^ - " exit 1;"^ - "}"^ - "}" - if ERRORLEVEL 1 goto error -) - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% diff --git a/performance-tests/pom.xml b/performance-tests/pom.xml index e73db5c..807ab5a 100644 --- a/performance-tests/pom.xml +++ b/performance-tests/pom.xml @@ -1,25 +1,25 @@ - 4.0.0 - - eu.ztsh.mockserver http-mock-server - 3.0.0-SNAPSHOT + pl.touk.mockserver + 2.7.0 + 4.0.0 mockserver-performance-tests - eu.ztsh.mockserver + pl.touk.mockserver mockserver + ${project.version} - eu.ztsh.mockserver + pl.touk.mockserver mockserver-client + ${project.version} - org.openjdk.jmh jmh-core diff --git a/performance-tests/src/test/java/eu/ztsh/mockserver/client/MockserverTest.java b/performance-tests/src/test/java/pl/touk/mockserver/client/MockserverTest.java similarity index 95% rename from performance-tests/src/test/java/eu/ztsh/mockserver/client/MockserverTest.java rename to performance-tests/src/test/java/pl/touk/mockserver/client/MockserverTest.java index 2a3b943..233a5f7 100644 --- a/performance-tests/src/test/java/eu/ztsh/mockserver/client/MockserverTest.java +++ b/performance-tests/src/test/java/pl/touk/mockserver/client/MockserverTest.java @@ -1,4 +1,4 @@ -package eu.ztsh.mockserver.client; +package pl.touk.mockserver.client; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.CloseableHttpResponse; @@ -18,8 +18,8 @@ import org.openjdk.jmh.annotations.TearDown; import org.openjdk.jmh.annotations.Warmup; import org.openjdk.jmh.infra.Blackhole; import org.openjdk.jmh.infra.ThreadParams; -import eu.ztsh.mockserver.api.request.AddMock; -import eu.ztsh.mockserver.server.HttpMockServer; +import pl.touk.mockserver.api.request.AddMock; +import pl.touk.mockserver.server.HttpMockServer; import java.io.IOException; import java.util.concurrent.TimeUnit; diff --git a/pom.xml b/pom.xml index a981985..4c3cdca 100644 --- a/pom.xml +++ b/pom.xml @@ -1,13 +1,17 @@ - + 4.0.0 - eu.ztsh.mockserver + + pl.touk + top + 1.0.7 + + + pl.touk.mockserver http-mock-server pom - 3.0.0-SNAPSHOT - + 2.7.0 mockserver-client mockserver @@ -17,74 +21,48 @@ - 11 - ${java.version} - ${java.version} UTF-8 - UTF-8 - 4.0.12 - 4.5.13 - 2.2-groovy-4.0 + 3.1 + 2.4.11 + 4.3.6 + 1.0-groovy-2.4 3.3.2 - 1.7.30 - 1.3.12 - 1.18.26 - 4.0.4 + 1.7.7 + 1.0.13 + 1.16.6 true - 1.37 - 3.0.2 - 3.1.0 + 1.11.2 + 2.5.2 + 1.4 + 0.5.1 + + scm:git:git@github.com:TouK/http-mock-server.git + scm:git:git@github.com:TouK/http-mock-server.git + http-mock-server-2.7.0 + + - eu.ztsh.mockserver - mockserver-api - ${project.version} - - - eu.ztsh.mockserver - mockserver - ${project.version} - - - eu.ztsh.mockserver - mockserver-client - ${project.version} - - - - org.glassfish.jaxb - jaxb-bom - ${jaxb.version} - pom - import - - - - org.apache.groovy - groovy + org.codehaus.groovy + groovy-all ${groovy.version} - - org.apache.groovy - groovy-json - ${groovy.version} - - - org.apache.groovy - groovy-xml - ${groovy.version} - - org.apache.httpcomponents httpclient ${httpclient.version} + + org.spockframework + spock-core + ${spock-core.version} + test + org.apache.commons commons-lang3 @@ -95,27 +73,20 @@ slf4j-api ${slf4j-api.version} - - ch.qos.logback - logback-core - ${logback.version} - ch.qos.logback logback-classic - ${logback.version} + ${logback-classic.version} org.projectlombok lombok ${lombok.version} - - org.spockframework - spock-core - ${spock-core.version} - test + pl.touk.mockserver + mockserver-api + ${project.version} org.openjdk.jmh @@ -129,32 +100,63 @@ ${jmh.version} test + + info.solidsoft.spock + spock-global-unroll + ${spock-global-unroll.version} + test + - - - - org.codehaus.mojo - jaxb2-maven-plugin - ${jaxb2-maven-plugin.version} - - - org.codehaus.gmavenplus - gmavenplus-plugin - ${gmavenplus-plugin.version} - - - - compile - compileTests - - - - - - + clean install + + + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + + + org.codehaus.gmavenplus + gmavenplus-plugin + ${gmavenplus-plugin.version} + + + + compile + testCompile + + + + + + org.apache.maven.plugins + maven-release-plugin + ${maven-release-plugin.version} + + true + + + + + + Dominik Przybysz + alien11689@gmail.com + + + + + + touk + TouK Open source repository + https://philanthropist.touk.pl/nexus/content/repositories/releases + + +