1
0
mirror of synced 2026-08-04 09:17:02 +00:00

SEC-2915: More Tabs -> Spaces

This commit is contained in:
Rob Winch
2015-04-17 11:34:34 -05:00
parent 5fa5630bc3
commit 4fdfb8caba
154 changed files with 9917 additions and 9917 deletions
@@ -33,276 +33,276 @@ import spock.lang.Specification
*
*/
class AbstractSecurityWebApplicationInitializerTests extends Specification {
def DEFAULT_DISPATCH = EnumSet.of(DispatcherType.REQUEST, DispatcherType.ERROR, DispatcherType.ASYNC)
def DEFAULT_DISPATCH = EnumSet.of(DispatcherType.REQUEST, DispatcherType.ERROR, DispatcherType.ASYNC)
def defaults() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
0 * context.addListener(_)
}
def defaults() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
0 * context.addListener(_)
}
def "defaults with ContextLoaderListener"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(MyRootConfiguration){}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
1 * context.addListener(_ as ContextLoaderListener)
}
def "defaults with ContextLoaderListener"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(MyRootConfiguration){}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
1 * context.addListener(_ as ContextLoaderListener)
}
@Configuration
static class MyRootConfiguration {}
@Configuration
static class MyRootConfiguration {}
def "enableHttpSessionEventPublisher() = true"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected boolean enableHttpSessionEventPublisher() {
return true;
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
1 * context.addListener(HttpSessionEventPublisher.class.name)
}
def "enableHttpSessionEventPublisher() = true"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected boolean enableHttpSessionEventPublisher() {
return true;
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
1 * context.addListener(HttpSessionEventPublisher.class.name)
}
def "custom getSecurityDispatcherTypes()"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected EnumSet<DispatcherType> getSecurityDispatcherTypes() {
return EnumSet.of(DispatcherType.REQUEST, DispatcherType.ERROR, DispatcherType.FORWARD);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST, DispatcherType.ERROR, DispatcherType.FORWARD), false, "/*");
1 * registration.setAsyncSupported(true)
0 * context.addListener(_)
}
def "custom getSecurityDispatcherTypes()"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected EnumSet<DispatcherType> getSecurityDispatcherTypes() {
return EnumSet.of(DispatcherType.REQUEST, DispatcherType.ERROR, DispatcherType.FORWARD);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST, DispatcherType.ERROR, DispatcherType.FORWARD), false, "/*");
1 * registration.setAsyncSupported(true)
0 * context.addListener(_)
}
def "custom getDispatcherWebApplicationContextSuffix"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected String getDispatcherWebApplicationContextSuffix() {
return "dispatcher"
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == "org.springframework.web.servlet.FrameworkServlet.CONTEXT.dispatcher"}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
0 * context.addListener(_)
}
def "custom getDispatcherWebApplicationContextSuffix"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected String getDispatcherWebApplicationContextSuffix() {
return "dispatcher"
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == "org.springframework.web.servlet.FrameworkServlet.CONTEXT.dispatcher"}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * registration.setAsyncSupported(true)
0 * context.addListener(_)
}
def "springSecurityFilterChain already registered"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> null
IllegalStateException success = thrown()
success.message == "Duplicate Filter registration for 'springSecurityFilterChain'. Check to ensure the Filter is only configured once."
}
def "springSecurityFilterChain already registered"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> null
IllegalStateException success = thrown()
success.message == "Duplicate Filter registration for 'springSecurityFilterChain'. Check to ensure the Filter is only configured once."
}
def "insertFilters"() {
setup:
Filter filter1 = Mock()
Filter filter2 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context, filter1, filter2);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
3 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
3 * registration.setAsyncSupported(true)
0 * context.addListener(_)
1 * context.addFilter(_, filter1) >> registration
1 * context.addFilter(_, filter2) >> registration
}
def "insertFilters"() {
setup:
Filter filter1 = Mock()
Filter filter2 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context, filter1, filter2);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
3 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
3 * registration.setAsyncSupported(true)
0 * context.addListener(_)
1 * context.addFilter(_, filter1) >> registration
1 * context.addFilter(_, filter2) >> registration
}
def "insertFilters already registered"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context, filter1);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * context.addFilter(_, filter1) >> null
IllegalStateException success = thrown()
success.message == "Duplicate Filter registration for 'filter'. Check to ensure the Filter is only configured once."
}
def "insertFilters already registered"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context, filter1);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * context.addFilter(_, filter1) >> null
IllegalStateException success = thrown()
success.message == "Duplicate Filter registration for 'filter'. Check to ensure the Filter is only configured once."
}
def "insertFilters no filters"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot be null or empty"
}
def "insertFilters no filters"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot be null or empty"
}
def "insertFilters filters with null"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context, filter1, null);
}
}.onStartup(context)
then:
2 * context.addFilter(_, _) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot contain null values. Got [Mock for type 'Filter' named 'filter1', null]"
}
def "insertFilters filters with null"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
insertFilters(context, filter1, null);
}
}.onStartup(context)
then:
2 * context.addFilter(_, _) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot contain null values. Got [Mock for type 'Filter' named 'filter1', null]"
}
def "appendFilters"() {
setup:
Filter filter1 = Mock()
Filter filter2 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context,filter1, filter2);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
2 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, true, "/*");
3 * registration.setAsyncSupported(true)
0 * context.addListener(_)
1 * context.addFilter(_, filter1) >> registration
1 * context.addFilter(_, filter2) >> registration
}
def "appendFilters"() {
setup:
Filter filter1 = Mock()
Filter filter2 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context,filter1, filter2);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
2 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, true, "/*");
3 * registration.setAsyncSupported(true)
0 * context.addListener(_)
1 * context.addFilter(_, filter1) >> registration
1 * context.addFilter(_, filter2) >> registration
}
def "appendFilters already registered"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context, filter1);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * context.addFilter(_, filter1) >> null
IllegalStateException success = thrown()
success.message == "Duplicate Filter registration for 'filter'. Check to ensure the Filter is only configured once."
}
def "appendFilters already registered"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context, filter1);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * registration.addMappingForUrlPatterns(DEFAULT_DISPATCH, false, "/*");
1 * context.addFilter(_, filter1) >> null
IllegalStateException success = thrown()
success.message == "Duplicate Filter registration for 'filter'. Check to ensure the Filter is only configured once."
}
def "appendFilters no filters"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot be null or empty"
}
def "appendFilters no filters"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context);
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot be null or empty"
}
def "sessionTrackingModes defaults"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){ }.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * context.setSessionTrackingModes({Set<SessionTrackingMode> modes -> modes.size() == 1 && modes.containsAll([SessionTrackingMode.COOKIE]) })
}
def "sessionTrackingModes defaults"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){ }.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * context.setSessionTrackingModes({Set<SessionTrackingMode> modes -> modes.size() == 1 && modes.containsAll([SessionTrackingMode.COOKIE]) })
}
def "sessionTrackingModes override"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
@Override
public Set<SessionTrackingMode> getSessionTrackingModes() {
return [SessionTrackingMode.SSL]
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * context.setSessionTrackingModes({Set<SessionTrackingMode> modes -> modes.size() == 1 && modes.containsAll([SessionTrackingMode.SSL]) })
}
def "sessionTrackingModes override"() {
setup:
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
@Override
public Set<SessionTrackingMode> getSessionTrackingModes() {
return [SessionTrackingMode.SSL]
}
}.onStartup(context)
then:
1 * context.addFilter("springSecurityFilterChain", {DelegatingFilterProxy f -> f.targetBeanName == "springSecurityFilterChain" && f.contextAttribute == null}) >> registration
1 * context.setSessionTrackingModes({Set<SessionTrackingMode> modes -> modes.size() == 1 && modes.containsAll([SessionTrackingMode.SSL]) })
}
def "appendFilters filters with null"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context, filter1, null);
}
}.onStartup(context)
then:
2 * context.addFilter(_, _) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot contain null values. Got [Mock for type 'Filter' named 'filter1', null]"
}
def "appendFilters filters with null"() {
setup:
Filter filter1 = Mock()
ServletContext context = Mock()
FilterRegistration.Dynamic registration = Mock()
when:
new AbstractSecurityWebApplicationInitializer(){
protected void afterSpringSecurityFilterChain(ServletContext servletContext) {
appendFilters(context, filter1, null);
}
}.onStartup(context)
then:
2 * context.addFilter(_, _) >> registration
IllegalArgumentException success = thrown()
success.message == "filters cannot contain null values. Got [Mock for type 'Filter' named 'filter1', null]"
}
def "DEFAULT_FILTER_NAME == springSecurityFilterChain"() {
expect:
AbstractSecurityWebApplicationInitializer.DEFAULT_FILTER_NAME == "springSecurityFilterChain"
}
def "DEFAULT_FILTER_NAME == springSecurityFilterChain"() {
expect:
AbstractSecurityWebApplicationInitializer.DEFAULT_FILTER_NAME == "springSecurityFilterChain"
}
}