From e52c6de39c510b1d7f4c0df8a1c3462275f80379 Mon Sep 17 00:00:00 2001 From: Josh Cummings Date: Fri, 9 Aug 2024 08:22:05 -0600 Subject: [PATCH] Repair Flaky Tests - Applying changes to OpenSaml4 tests that were already applied to OpenSaml5 tests Issue gh-15395 --- ...Saml4AssertingPartyMetadataRepositoryTests.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/saml2/saml2-service-provider/src/opensaml4Test/java/org/springframework/security/saml2/provider/service/registration/OpenSaml4AssertingPartyMetadataRepositoryTests.java b/saml2/saml2-service-provider/src/opensaml4Test/java/org/springframework/security/saml2/provider/service/registration/OpenSaml4AssertingPartyMetadataRepositoryTests.java index 8609e71645..5537768088 100644 --- a/saml2/saml2-service-provider/src/opensaml4Test/java/org/springframework/security/saml2/provider/service/registration/OpenSaml4AssertingPartyMetadataRepositoryTests.java +++ b/saml2/saml2-service-provider/src/opensaml4Test/java/org/springframework/security/saml2/provider/service/registration/OpenSaml4AssertingPartyMetadataRepositoryTests.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Set; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import net.shibboleth.utilities.java.support.xml.SerializeSupport; @@ -89,7 +90,7 @@ public class OpenSaml4AssertingPartyMetadataRepositoryTests { @Test public void withMetadataUrlLocationWhenResolvableThenFindByEntityIdReturns() throws Exception { try (MockWebServer server = new MockWebServer()) { - server.setDispatcher(new AlwaysDispatch(new MockResponse().setBody(this.metadata).setResponseCode(200))); + server.setDispatcher(new AlwaysDispatch(this.metadata)); AssertingPartyMetadataRepository parties = OpenSaml4AssertingPartyMetadataRepository .withTrustedMetadataLocation(server.url("/").toString()) .build(); @@ -106,8 +107,7 @@ public class OpenSaml4AssertingPartyMetadataRepositoryTests { @Test public void withMetadataUrlLocationnWhenResolvableThenIteratorReturns() throws Exception { try (MockWebServer server = new MockWebServer()) { - server.setDispatcher( - new AlwaysDispatch(new MockResponse().setBody(this.entitiesDescriptor).setResponseCode(200))); + server.setDispatcher(new AlwaysDispatch(this.entitiesDescriptor)); List parties = new ArrayList<>(); OpenSaml4AssertingPartyMetadataRepository.withTrustedMetadataLocation(server.url("/").toString()) .build() @@ -122,7 +122,9 @@ public class OpenSaml4AssertingPartyMetadataRepositoryTests { @Test public void withMetadataUrlLocationWhenUnresolvableThenThrowsSaml2Exception() throws Exception { try (MockWebServer server = new MockWebServer()) { - server.enqueue(new MockResponse().setBody(this.metadata).setResponseCode(200)); + server.enqueue(new MockResponse().setBody(this.metadata) + .setResponseCode(200) + .setBodyDelay(1, TimeUnit.MILLISECONDS)); String url = server.url("/").toString(); server.shutdown(); assertThatExceptionOfType(Saml2Exception.class) @@ -360,7 +362,9 @@ public class OpenSaml4AssertingPartyMetadataRepositoryTests { private final MockResponse response; private AlwaysDispatch(String body) { - this.response = new MockResponse().setBody(body).setResponseCode(200); + this.response = new MockResponse().setBody(body) + .setResponseCode(200) + .setBodyDelay(1, TimeUnit.MILLISECONDS); } private AlwaysDispatch(MockResponse response) {