/** * Licensed to The Apereo Foundation under one or more contributor license * agreements. See the NOTICE file distributed with this work for additional * information regarding copyright ownership. * * * The Apereo Foundation licenses this file to you under the Educational * Community 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://opensource.org/licenses/ecl2.txt * * 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.opencastproject.kernel.security; import org.opencastproject.security.api.DefaultOrganization; import org.opencastproject.security.api.JaxbRole; import org.opencastproject.security.api.JaxbUser; import org.opencastproject.security.api.SecurityConstants; import org.opencastproject.security.api.SecurityService; import org.opencastproject.security.api.User; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; import javax.servlet.http.HttpServletRequest; import junit.framework.Assert; /** * Tests the {@link TrustedAnonymousAuthenticationFilter} */ public class TrustedAnonymousAthenticationFilterTest { private SecurityService securityService; /** * @throws java.lang.Exception */ @Before public void setUp() throws Exception { securityService = EasyMock.createNiceMock(SecurityService.class); User user = new JaxbUser("admin", "test", new DefaultOrganization(), new JaxbRole( SecurityConstants.GLOBAL_ADMIN_ROLE, new DefaultOrganization())); EasyMock.expect(securityService.getOrganization()).andReturn(new DefaultOrganization()).anyTimes(); EasyMock.expect(securityService.getUser()).andReturn(user).anyTimes(); EasyMock.replay(securityService); } @Test @SuppressWarnings("deprecation") public void testTrusedAnonymousAuthenticationFilter() { HttpServletRequest request = EasyMock.createNiceMock(HttpServletRequest.class); EasyMock.expect(request.getHeader(SecurityConstants.AUTHORIZATION_HEADER)).andReturn("true"); EasyMock.expect(request.getHeader(SecurityConstants.AUTHORIZATION_HEADER)).andReturn(null); EasyMock.replay(request); TrustedAnonymousAuthenticationFilter filter = new TrustedAnonymousAuthenticationFilter(); boolean isAnonymousRequest = filter.applyAnonymousForThisRequest(request); Assert.assertFalse(isAnonymousRequest); isAnonymousRequest = filter.applyAnonymousForThisRequest(request); Assert.assertTrue(isAnonymousRequest); } }