ProviderManager Uses CollectionUtils#contains

Closes gh-8689
This commit is contained in:
yukihane
2020-06-16 19:22:29 +09:00
committed by Josh Cummings
parent 27e1c582b9
commit 5302fb776c
2 changed files with 27 additions and 1 deletions

View File

@@ -102,6 +102,31 @@ public class ProviderManagerTests {
new ProviderManager((AuthenticationProvider) null);
}
@Test(expected = IllegalArgumentException.class)
public void testStartupFailsIfProvidersContainNullElement() {
new ProviderManager(Arrays.asList(mock(AuthenticationProvider.class), null));
}
@Test
public void testUsingNullNotPermittedList() {
// imitated Java9 List.of(e) object, which disallows null elements and
// throws NPE when contains(null) called
List<AuthenticationProvider> providers = new ArrayList<AuthenticationProvider>() {
private static final long serialVersionUID = 1L;
@Override
public boolean contains(Object o) {
if (o == null) {
throw new NullPointerException();
}
return super.contains(o);
}
};
providers.add(mock(AuthenticationProvider.class));
new ProviderManager(providers);
}
@Test
public void detailsAreNotSetOnAuthenticationTokenIfAlreadySetByProvider() {
Object requestDetails = "(Request Details)";