filter.destroy();
}
public void testIsUserInRoleCaseInsensitive() throws Exception {
final MockHttpServletRequest request = new MockHttpServletRequest();
final MockHttpSession session = new MockHttpSession();
final MockFilterConfig config = new MockFilterConfig();
config.addInitParameter("roleAttribute", "groupMembership");
config.addInitParameter("ignoreCase", "true");
final HttpServletRequestWrapperFilter filter = new HttpServletRequestWrapperFilter();
filter.init(config);
final Map<String, Object> attributes = new HashMap<String, Object>();
attributes.put("groupMembership", Arrays.asList(new Object[] { "animals", "ducks" }));
final AttributePrincipal principal = new AttributePrincipalImpl("daffy", attributes);
session.setAttribute(AbstractCasFilter.CONST_CAS_ASSERTION, new AssertionImpl(principal));
request.setSession(session);
filter.doFilter(request, new MockHttpServletResponse(), createFilterChain());
assertEquals("daffy", this.mockRequest.getRemoteUser());