From ce344fc1927ab9fb63dcbec99b43962d8f2e005c Mon Sep 17 00:00:00 2001 From: Mart Aarma Date: Tue, 14 Jul 2026 09:33:40 +0300 Subject: [PATCH 1/2] Update mock dates in tests --- .../validator/AuthTokenAlgorithmTest.java | 25 ++++++++++++-- .../validator/AuthTokenSignatureTest.java | 33 ++++++++++++++----- .../ocsp/OcspClientOverrideTest.java | 21 ++++++++++++ 3 files changed, 68 insertions(+), 11 deletions(-) diff --git a/src/test/java/eu/webeid/security/validator/AuthTokenAlgorithmTest.java b/src/test/java/eu/webeid/security/validator/AuthTokenAlgorithmTest.java index 3f1e6a78..a29f05fc 100644 --- a/src/test/java/eu/webeid/security/validator/AuthTokenAlgorithmTest.java +++ b/src/test/java/eu/webeid/security/validator/AuthTokenAlgorithmTest.java @@ -22,15 +22,36 @@ package eu.webeid.security.validator; -import org.junit.jupiter.api.Test; import eu.webeid.security.authtoken.WebEidAuthToken; -import eu.webeid.security.exceptions.AuthTokenParseException; import eu.webeid.security.exceptions.AuthTokenException; +import eu.webeid.security.exceptions.AuthTokenParseException; import eu.webeid.security.testutil.AbstractTestWithValidator; +import eu.webeid.security.util.DateAndTime; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.MockedStatic; +import static eu.webeid.security.testutil.DateMocker.mockDate; import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.mockito.Mockito.mockStatic; class AuthTokenAlgorithmTest extends AbstractTestWithValidator { + private MockedStatic mockedClock; + + @Override + @BeforeEach + protected void setup() { + super.setup(); + mockedClock = mockStatic(DateAndTime.DefaultClock.class); + // Ensure that the certificates do not expire. + mockDate("2021-07-23", mockedClock); + } + + @AfterEach + void tearDown() { + mockedClock.close(); + } @Test void whenAlgorithmNone_thenValidationFails() throws AuthTokenException { diff --git a/src/test/java/eu/webeid/security/validator/AuthTokenSignatureTest.java b/src/test/java/eu/webeid/security/validator/AuthTokenSignatureTest.java index 3f596858..3a43a3e3 100644 --- a/src/test/java/eu/webeid/security/validator/AuthTokenSignatureTest.java +++ b/src/test/java/eu/webeid/security/validator/AuthTokenSignatureTest.java @@ -28,7 +28,10 @@ import eu.webeid.security.testutil.AbstractTestWithValidator; import eu.webeid.security.testutil.AuthTokenValidators; import eu.webeid.security.util.DateAndTime; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.mockito.MockedStatic; import java.security.cert.X509Certificate; @@ -46,6 +49,22 @@ class AuthTokenSignatureTest extends AbstractTestWithValidator { "\"signature\":\"arx164xRiwhIQDINe0J+ZxJWZFOQTx0PBtOaWaxAe7gofEIHRIbV1w0sOCYBJnvmvMem9hU4nc2+iJx2x8poYck4Z6eI3GwtiksIec3XQ9ZIk1n/XchXnmPn3GYV+HzJ\"," + "\"format\":\"web-eid:1.0\"}"; + private MockedStatic mockedClock; + + @Override + @BeforeEach + protected void setup() { + super.setup(); + mockedClock = mockStatic(DateAndTime.DefaultClock.class); + // Ensure that the certificates do not expire. + mockDate("2021-07-23", mockedClock); + } + + @AfterEach + void tearDown() { + mockedClock.close(); + } + @Test void whenValidTokenAndNonce_thenValidationSucceeds() throws Exception { final X509Certificate result = validator.validate(validAuthToken, VALID_CHALLENGE_NONCE); @@ -80,15 +99,11 @@ void whenValidTokenAndWrongOrigin_thenValidationFails() throws Exception { @Test void whenTokenWithWrongCert_thenValidationFails() throws Exception { - // Ensure that the certificate does not expire. - try (final var mockedClock = mockStatic(DateAndTime.DefaultClock.class)) { - mockDate("2024-08-01", mockedClock); - final AuthTokenValidator authTokenValidator = AuthTokenValidators.getAuthTokenValidator(); - final WebEidAuthToken authTokenWithWrongCert = authTokenValidator.parse(AUTH_TOKEN_WRONG_CERT); - assertThatThrownBy(() -> authTokenValidator - .validate(authTokenWithWrongCert, VALID_CHALLENGE_NONCE)) - .isInstanceOf(AuthTokenSignatureValidationException.class); - } + final AuthTokenValidator authTokenValidator = AuthTokenValidators.getAuthTokenValidator(); + final WebEidAuthToken authTokenWithWrongCert = authTokenValidator.parse(AUTH_TOKEN_WRONG_CERT); + assertThatThrownBy(() -> authTokenValidator + .validate(authTokenWithWrongCert, VALID_CHALLENGE_NONCE)) + .isInstanceOf(AuthTokenSignatureValidationException.class); } } diff --git a/src/test/java/eu/webeid/security/validator/ocsp/OcspClientOverrideTest.java b/src/test/java/eu/webeid/security/validator/ocsp/OcspClientOverrideTest.java index 4cd1d951..c1a66c4e 100644 --- a/src/test/java/eu/webeid/security/validator/ocsp/OcspClientOverrideTest.java +++ b/src/test/java/eu/webeid/security/validator/ocsp/OcspClientOverrideTest.java @@ -25,11 +25,15 @@ import eu.webeid.security.exceptions.JceException; import eu.webeid.security.testutil.AbstractTestWithValidator; import eu.webeid.security.testutil.AuthTokenValidators; +import eu.webeid.security.util.DateAndTime; import eu.webeid.security.validator.AuthTokenValidator; import org.bouncycastle.cert.ocsp.OCSPReq; import org.bouncycastle.cert.ocsp.OCSPResp; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; +import org.mockito.MockedStatic; import java.io.IOException; import java.net.URI; @@ -37,10 +41,27 @@ import java.security.cert.CertificateException; import java.time.Duration; +import static eu.webeid.security.testutil.DateMocker.mockDate; import static org.assertj.core.api.Assertions.assertThatCode; import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.mockito.Mockito.mockStatic; class OcspClientOverrideTest extends AbstractTestWithValidator { + private MockedStatic mockedClock; + + @Override + @BeforeEach + protected void setup() { + super.setup(); + mockedClock = mockStatic(DateAndTime.DefaultClock.class); + // Ensure that the certificates do not expire. + mockDate("2021-07-23", mockedClock); + } + + @AfterEach + void tearDown() { + mockedClock.close(); + } @Test void whenOcspClientIsOverridden_thenItIsUsed() throws JceException, CertificateException, IOException { From 86a690ef23e5392fa7159d104ddcfa6d809ab1d0 Mon Sep 17 00:00:00 2001 From: Mart Somermaa Date: Tue, 14 Jul 2026 14:16:24 +0300 Subject: [PATCH 2/2] build(deps): bump jackson-databind to 2.22.1 Signed-off-by: Mart Somermaa --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7211694a..c1604d8d 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ 11 0.13.0 1.84 - 2.22.0 + 2.22.1 2.0.17 5.14.4 3.27.7