@Test public void getConfigurersWhenMultipleConfigurersThenConfigurersReturned() throws Exception { DelegateSecurityConfigurer configurer1 = new DelegateSecurityConfigurer(); DelegateSecurityConfigurer configurer2 = new DelegateSecurityConfigurer(); TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class), true); builder.apply(configurer1); builder.apply(configurer2); List<DelegateSecurityConfigurer> configurers = builder.getConfigurers(DelegateSecurityConfigurer.class); assertThat(configurers).hasSize(2); assertThat(configurers).containsExactly(configurer1, configurer2); assertThat(builder.getConfigurers(DelegateSecurityConfigurer.class)).hasSize(2); }
@Test public void removeConfigurersWhenMultipleConfigurersThenConfigurersRemoved() throws Exception { DelegateSecurityConfigurer configurer1 = new DelegateSecurityConfigurer(); DelegateSecurityConfigurer configurer2 = new DelegateSecurityConfigurer(); TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class), true); builder.apply(configurer1); builder.apply(configurer2); List<DelegateSecurityConfigurer> removedConfigurers = builder.removeConfigurers(DelegateSecurityConfigurer.class); assertThat(removedConfigurers).hasSize(2); assertThat(removedConfigurers).containsExactly(configurer1, configurer2); assertThat(builder.getConfigurers(DelegateSecurityConfigurer.class)).isEmpty(); }
@Before public void setUp() { this.builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class)); }
@Test(expected = IllegalArgumentException.class) public void constructorWhenObjectPostProcessorIsNullThenThrowIllegalArgumentException() { new TestConfiguredSecurityBuilder(null); }
@Test(expected = IllegalStateException.class) public void removeConfigurerWhenMultipleConfigurersThenThrowIllegalStateException() throws Exception { TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class), true); builder.apply(new DelegateSecurityConfigurer()); builder.apply(new DelegateSecurityConfigurer()); builder.removeConfigurer(DelegateSecurityConfigurer.class); }
@Test(expected = IllegalStateException.class) public void getConfigurerWhenMultipleConfigurersThenThrowIllegalStateException() throws Exception { TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class), true); builder.apply(new DelegateSecurityConfigurer()); builder.apply(new DelegateSecurityConfigurer()); builder.getConfigurer(DelegateSecurityConfigurer.class); }