feat!: Groovy 4 & JAXB 4

This commit is contained in:
Piotr Dec 2024-02-22 22:48:45 +01:00
parent 514064debc
commit 5ddcb87179
Signed by: stawros
GPG key ID: F89F27AD8F881A91
8 changed files with 52 additions and 28 deletions

View file

@ -18,18 +18,27 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy</artifactId> <artifactId>groovy</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy-json</artifactId> <artifactId>groovy-json</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy-xml</artifactId> <artifactId>groovy-xml</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-core</artifactId>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.apache.httpcomponents</groupId> <groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId> <artifactId>httpclient</artifactId>

View file

@ -3,7 +3,8 @@ package eu.ztsh.mockserver.client
import groovy.json.JsonSlurper import groovy.json.JsonSlurper
import groovy.transform.CompileStatic import groovy.transform.CompileStatic
import groovy.transform.TypeChecked import groovy.transform.TypeChecked
import groovy.util.slurpersupport.GPathResult import groovy.xml.XmlSlurper
import groovy.xml.slurpersupport.GPathResult
import org.apache.http.HttpEntity import org.apache.http.HttpEntity
import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.CloseableHttpResponse
import org.apache.http.util.EntityUtils import org.apache.http.util.EntityUtils

View file

@ -22,7 +22,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy</artifactId> <artifactId>groovy</artifactId>
</dependency> </dependency>

View file

@ -1,6 +1,11 @@
package eu.ztsh.mockserver.tests package eu.ztsh.mockserver.tests
import groovy.util.slurpersupport.GPathResult 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 org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.CloseableHttpResponse
import org.apache.http.client.methods.HttpPost import org.apache.http.client.methods.HttpPost
import org.apache.http.conn.ssl.SSLConnectionSocketFactory import org.apache.http.conn.ssl.SSLConnectionSocketFactory
@ -9,11 +14,6 @@ import org.apache.http.entity.ContentType
import org.apache.http.entity.StringEntity import org.apache.http.entity.StringEntity
import org.apache.http.impl.client.CloseableHttpClient import org.apache.http.impl.client.CloseableHttpClient
import org.apache.http.impl.client.HttpClients import org.apache.http.impl.client.HttpClients
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 spock.lang.AutoCleanup import spock.lang.AutoCleanup
import spock.lang.Ignore import spock.lang.Ignore
import spock.lang.Shared import spock.lang.Shared
@ -23,7 +23,6 @@ import javax.net.ssl.SSLContext
import javax.net.ssl.SSLHandshakeException import javax.net.ssl.SSLHandshakeException
import java.security.KeyStore import java.security.KeyStore
@Ignore('Upgrade of Java needed')
class MockServerHttpsTest extends Specification { class MockServerHttpsTest extends Specification {
RemoteMockServer remoteMockServer = new RemoteMockServer('localhost', 19000) RemoteMockServer remoteMockServer = new RemoteMockServer('localhost', 19000)
@ -48,6 +47,7 @@ class MockServerHttpsTest extends Specification {
.loadTrustMaterial(trustStore()) .loadTrustMaterial(trustStore())
.build() .build()
@Ignore("TODO: SSL peer shut down incorrectly")
def 'should handle HTTPS server' () { def 'should handle HTTPS server' () {
given: given:
remoteMockServer.addMock(new AddMock( remoteMockServer.addMock(new AddMock(
@ -72,6 +72,7 @@ class MockServerHttpsTest extends Specification {
restPostResponse.name() == 'goodResponse-request' restPostResponse.name() == 'goodResponse-request'
} }
@Ignore("TODO: SSL peer shut down incorrectly")
def 'should handle HTTPS server with client auth' () { def 'should handle HTTPS server with client auth' () {
given: given:
remoteMockServer.addMock(new AddMock( remoteMockServer.addMock(new AddMock(

View file

@ -1,6 +1,6 @@
package eu.ztsh.mockserver.tests package eu.ztsh.mockserver.tests
import groovy.util.slurpersupport.GPathResult import groovy.xml.slurpersupport.GPathResult
import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.CloseableHttpResponse
import org.apache.http.client.methods.HttpDelete import org.apache.http.client.methods.HttpDelete
import org.apache.http.client.methods.HttpGet import org.apache.http.client.methods.HttpGet

View file

@ -18,18 +18,27 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy</artifactId> <artifactId>groovy</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy-json</artifactId> <artifactId>groovy-json</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy-xml</artifactId> <artifactId>groovy-xml</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-core</artifactId>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.apache.commons</groupId> <groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId> <artifactId>commons-lang3</artifactId>

View file

@ -3,7 +3,8 @@ package eu.ztsh.mockserver.server
import com.sun.net.httpserver.Headers import com.sun.net.httpserver.Headers
import groovy.json.JsonSlurper import groovy.json.JsonSlurper
import groovy.transform.PackageScope import groovy.transform.PackageScope
import groovy.util.slurpersupport.GPathResult import groovy.xml.XmlSlurper
import groovy.xml.slurpersupport.GPathResult
import groovy.xml.XmlUtil import groovy.xml.XmlUtil
@PackageScope @PackageScope

25
pom.xml
View file

@ -23,14 +23,14 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<groovy.version>3.0.20</groovy.version> <groovy.version>4.0.12</groovy.version>
<httpclient.version>4.5.13</httpclient.version> <httpclient.version>4.5.13</httpclient.version>
<spock-core.version>2.0-groovy-3.0</spock-core.version> <spock-core.version>2.2-groovy-4.0</spock-core.version>
<commons-lang3.version>3.3.2</commons-lang3.version> <commons-lang3.version>3.3.2</commons-lang3.version>
<slf4j-api.version>1.7.30</slf4j-api.version> <slf4j-api.version>1.7.30</slf4j-api.version>
<logback.version>1.3.12</logback.version> <logback.version>1.3.12</logback.version>
<lombok.version>1.18.26</lombok.version> <lombok.version>1.18.26</lombok.version>
<jakarta-xml-bind.version>4.0.1</jakarta-xml-bind.version> <jaxb.version>4.0.4</jaxb.version>
<autoVersionSubmodules>true</autoVersionSubmodules> <autoVersionSubmodules>true</autoVersionSubmodules>
<jmh.version>1.37</jmh.version> <jmh.version>1.37</jmh.version>
@ -57,17 +57,25 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-bom</artifactId>
<version>${jaxb.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy</artifactId> <artifactId>groovy</artifactId>
<version>${groovy.version}</version> <version>${groovy.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy-json</artifactId> <artifactId>groovy-json</artifactId>
<version>${groovy.version}</version> <version>${groovy.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.groovy</groupId> <groupId>org.apache.groovy</groupId>
<artifactId>groovy-xml</artifactId> <artifactId>groovy-xml</artifactId>
<version>${groovy.version}</version> <version>${groovy.version}</version>
</dependency> </dependency>
@ -82,11 +90,6 @@
<artifactId>commons-lang3</artifactId> <artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version> <version>${commons-lang3.version}</version>
</dependency> </dependency>
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>${jakarta-xml-bind.version}</version>
</dependency>
<dependency> <dependency>
<groupId>org.slf4j</groupId> <groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId> <artifactId>slf4j-api</artifactId>