diff --git a/config/src/test/java/org/springframework/security/config/MockEventListener.java b/config/src/test/java/org/springframework/security/config/MockEventListener.java new file mode 100644 index 0000000000..d89c3326cb --- /dev/null +++ b/config/src/test/java/org/springframework/security/config/MockEventListener.java @@ -0,0 +1,40 @@ +/* + * Copyright 2002-2018 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.security.config; + +import org.springframework.context.ApplicationEvent; +import org.springframework.context.ApplicationListener; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Rob Winch + * @since 5.0 + */ +public class MockEventListener + implements ApplicationListener { + private List events = new ArrayList<>(); + + public void onApplicationEvent(T event) { + this.events.add(event); + } + + public List getEvents() { + return this.events; + } +} diff --git a/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationPublishTests.java b/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationPublishTests.java index b3100fc023..5afc6865af 100644 --- a/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationPublishTests.java +++ b/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationPublishTests.java @@ -19,7 +19,6 @@ package org.springframework.security.config.annotation.authentication.configurat import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationListener; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Import; import org.springframework.security.authentication.AuthenticationEventPublisher; @@ -27,12 +26,10 @@ import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.DefaultAuthenticationEventPublisher; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.config.MockEventListener; import org.springframework.security.config.users.AuthenticationTestConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import java.util.ArrayList; -import java.util.List; - import static org.assertj.core.api.Assertions.*; /** @@ -41,7 +38,7 @@ import static org.assertj.core.api.Assertions.*; @RunWith(SpringJUnit4ClassRunner.class) public class AuthenticationConfigurationPublishTests { @Autowired - MockEventListener listener; + MockEventListener listener; AuthenticationManager authenticationManager; @@ -50,7 +47,7 @@ public class AuthenticationConfigurationPublishTests { public void authenticationEventPublisherBeanUsedByDefault() { this.authenticationManager.authenticate(new UsernamePasswordAuthenticationToken("user", "password")); - assertThat(this.listener.events).hasSize(1); + assertThat(this.listener.getEvents()).hasSize(1); } @Autowired @@ -67,18 +64,9 @@ public class AuthenticationConfigurationPublishTests { } @Bean - MockEventListener eventListener() { - return new MockEventListener(); + MockEventListener eventListener() { + return new MockEventListener(){}; } } - static class MockEventListener implements - ApplicationListener { - List events = new ArrayList<>(); - - public void onApplicationEvent(AuthenticationSuccessEvent event) { - this.events.add(event); - } - - } }