mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-06-24 04:52:16 +00:00
Repair Flaky Tests
- MockWebServer seems to start failing to respond to connections at a certain frequency of requests. This commit builds in a small delay of 1 millisecond to address this. Closes gh-15395
This commit is contained in:
parent
e0be46ea84
commit
0b0ffa01f7
@ -24,6 +24,7 @@ import java.util.ArrayList;
|
|||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import net.shibboleth.utilities.java.support.xml.SerializeSupport;
|
import net.shibboleth.utilities.java.support.xml.SerializeSupport;
|
||||||
@ -89,14 +90,14 @@ public class OpenSamlAssertingPartyMetadataRepositoryTests {
|
|||||||
@Test
|
@Test
|
||||||
public void withMetadataUrlLocationWhenResolvableThenFindByEntityIdReturns() throws Exception {
|
public void withMetadataUrlLocationWhenResolvableThenFindByEntityIdReturns() throws Exception {
|
||||||
try (MockWebServer server = new MockWebServer()) {
|
try (MockWebServer server = new MockWebServer()) {
|
||||||
server.setDispatcher(new AlwaysDispatch(new MockResponse().setBody(this.metadata).setResponseCode(200)));
|
server.setDispatcher(new AlwaysDispatch(this.metadata));
|
||||||
AssertingPartyMetadataRepository parties = OpenSamlAssertingPartyMetadataRepository
|
AssertingPartyMetadataRepository parties = OpenSamlAssertingPartyMetadataRepository
|
||||||
.withTrustedMetadataLocation(server.url("/").toString())
|
.withTrustedMetadataLocation(server.url("/").toString())
|
||||||
.build();
|
.build();
|
||||||
AssertingPartyMetadata party = parties.findByEntityId("https://idp.example.com/idp/shibboleth");
|
AssertingPartyMetadata party = parties.findByEntityId("https://idp.example.com/idp/shibboleth");
|
||||||
assertThat(party.getEntityId()).isEqualTo("https://idp.example.com/idp/shibboleth");
|
assertThat(party.getEntityId()).isEqualTo("https://idp.example.com/idp/shibboleth");
|
||||||
assertThat(party.getSingleSignOnServiceLocation())
|
assertThat(party.getSingleSignOnServiceLocation())
|
||||||
.isEqualTo("https://idp.example.com/idp/profile/SAML2/POST/SSO");
|
.isEqualTo("https://idp.example.com/idp/profile/SAML2/POST/SSO");
|
||||||
assertThat(party.getSingleSignOnServiceBinding()).isEqualTo(Saml2MessageBinding.POST);
|
assertThat(party.getSingleSignOnServiceBinding()).isEqualTo(Saml2MessageBinding.POST);
|
||||||
assertThat(party.getVerificationX509Credentials()).hasSize(1);
|
assertThat(party.getVerificationX509Credentials()).hasSize(1);
|
||||||
assertThat(party.getEncryptionX509Credentials()).hasSize(1);
|
assertThat(party.getEncryptionX509Credentials()).hasSize(1);
|
||||||
@ -106,8 +107,7 @@ public class OpenSamlAssertingPartyMetadataRepositoryTests {
|
|||||||
@Test
|
@Test
|
||||||
public void withMetadataUrlLocationnWhenResolvableThenIteratorReturns() throws Exception {
|
public void withMetadataUrlLocationnWhenResolvableThenIteratorReturns() throws Exception {
|
||||||
try (MockWebServer server = new MockWebServer()) {
|
try (MockWebServer server = new MockWebServer()) {
|
||||||
server.setDispatcher(
|
server.setDispatcher(new AlwaysDispatch(this.entitiesDescriptor));
|
||||||
new AlwaysDispatch(new MockResponse().setBody(this.entitiesDescriptor).setResponseCode(200)));
|
|
||||||
List<AssertingPartyMetadata> parties = new ArrayList<>();
|
List<AssertingPartyMetadata> parties = new ArrayList<>();
|
||||||
OpenSamlAssertingPartyMetadataRepository.withTrustedMetadataLocation(server.url("/").toString())
|
OpenSamlAssertingPartyMetadataRepository.withTrustedMetadataLocation(server.url("/").toString())
|
||||||
.build()
|
.build()
|
||||||
@ -360,7 +360,7 @@ public class OpenSamlAssertingPartyMetadataRepositoryTests {
|
|||||||
private final MockResponse response;
|
private final MockResponse response;
|
||||||
|
|
||||||
private AlwaysDispatch(String body) {
|
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) {
|
private AlwaysDispatch(MockResponse response) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user