package org.apereo.cas.authentication.principal; import org.apereo.cas.CasProtocolConstants; import org.junit.Test; import org.springframework.mock.web.MockHttpServletRequest; import static org.junit.Assert.*; /** * Test cases for {@link WebApplicationServiceFactory}. * * @author Misagh Moayyed * @since 4.2 */ public class WebApplicationServiceFactoryTests { @Test public void verifyServiceCreationSuccessfullyById() { final WebApplicationServiceFactory factory = new WebApplicationServiceFactory(); final WebApplicationService service = factory.createService("testservice"); assertNotNull(service); } @Test public void verifyServiceCreationSuccessfullyByService() { final MockHttpServletRequest request = new MockHttpServletRequest(); request.addParameter(CasProtocolConstants.PARAMETER_SERVICE, "test"); final WebApplicationServiceFactory factory = new WebApplicationServiceFactory(); final WebApplicationService service = factory.createService(request); assertNotNull(service); } @Test public void verifyServiceCreationSuccessfullyByTargetService() { final MockHttpServletRequest request = new MockHttpServletRequest(); request.addParameter(CasProtocolConstants.PARAMETER_TARGET_SERVICE, "test"); final WebApplicationServiceFactory factory = new WebApplicationServiceFactory(); final WebApplicationService service = factory.createService(request); assertNotNull(service); } @Test public void verifyServiceCreationSuccessfullyByTargetServiceAndTicket() { final MockHttpServletRequest request = new MockHttpServletRequest(); request.addParameter(CasProtocolConstants.PARAMETER_TARGET_SERVICE, "test"); request.addParameter(CasProtocolConstants.PARAMETER_TICKET, "ticket"); request.addParameter(CasProtocolConstants.PARAMETER_METHOD, "post"); final WebApplicationServiceFactory factory = new WebApplicationServiceFactory(); final WebApplicationService service = factory.createService(request); assertNotNull(service); assertEquals(service.getArtifactId(), "ticket"); } @Test public void verifyServiceCreationNoService() { final MockHttpServletRequest request = new MockHttpServletRequest(); request.addParameter(CasProtocolConstants.PARAMETER_TICKET, "ticket"); final WebApplicationServiceFactory factory = new WebApplicationServiceFactory(); final WebApplicationService service = factory.createService(request); assertNull(service); } }