Search in sources :

Example 21 with CreateApplicationSessionRequest

use of com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest in project cia by Hack23.

the class CreateApplicationSessionServiceITest method serviceCreateApplicationSessionRequestSuccessTest.

/**
 * Service create application session request success test.
 *
 * @throws Exception
 *             the exception
 */
@Test
public void serviceCreateApplicationSessionRequestSuccessTest() throws Exception {
    setAuthenticatedAnonymousUser();
    final CreateApplicationSessionRequest serviceRequest = new CreateApplicationSessionRequest();
    serviceRequest.setIpInformation("8.8.8.8");
    serviceRequest.setLocale("en_US.UTF-8");
    serviceRequest.setOperatingSystem("LINUX");
    serviceRequest.setSessionId(UUID.randomUUID().toString());
    serviceRequest.setSessionType(ApplicationSessionType.ANONYMOUS);
    serviceRequest.setUserAgentInformation("Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0");
    final CreateApplicationSessionResponse response = (CreateApplicationSessionResponse) applicationManager.service(serviceRequest);
    assertNotNull(EXPECT_A_RESULT, response);
    assertEquals(EXPECT_SUCCESS, ServiceResult.SUCCESS, response.getResult());
    final List<ApplicationSession> findListByProperty = applicationSessionDAO.findListByProperty(ApplicationSession_.sessionId, serviceRequest.getSessionId());
    assertEquals(1, findListByProperty.size());
    final ApplicationSession applicationSession = findListByProperty.get(0);
    assertNotNull(applicationSession);
    assertNotNull(applicationSession.getCreatedDate());
    assertEquals(serviceRequest.getIpInformation(), applicationSession.getIpInformation());
    assertEquals(serviceRequest.getOperatingSystem(), applicationSession.getOperatingSystem());
    assertEquals(serviceRequest.getLocale(), applicationSession.getLocale());
    assertEquals(serviceRequest.getUserAgentInformation(), applicationSession.getUserAgentInformation());
    assertEquals(serviceRequest.getSessionType(), applicationSession.getSessionType());
}
Also used : ApplicationSession(com.hack23.cia.model.internal.application.system.impl.ApplicationSession) CreateApplicationSessionRequest(com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest) CreateApplicationSessionResponse(com.hack23.cia.service.api.action.application.CreateApplicationSessionResponse) Test(org.junit.Test) AbstractServiceFunctionalIntegrationTest(com.hack23.cia.service.impl.AbstractServiceFunctionalIntegrationTest)

Example 22 with CreateApplicationSessionRequest

use of com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest in project cia by Hack23.

the class LoginServiceITest method serviceLoginRequestSuccessTest.

/**
 * Service login request success test.
 *
 * @throws Exception
 *             the exception
 */
@Test
@PerfTest(threads = 2, duration = 4000, warmUp = 1500)
@Required(max = 2500, average = 2000, percentile95 = 2200, throughput = 1)
public void serviceLoginRequestSuccessTest() throws Exception {
    final CreateApplicationSessionRequest createApplicationSesstion = createApplicationSesstionWithRoleAnonymous();
    final RegisterUserRequest serviceRequest = new RegisterUserRequest();
    serviceRequest.setCountry("Sweden");
    serviceRequest.setUsername(UUID.randomUUID().toString());
    serviceRequest.setEmail(serviceRequest.getUsername() + "@email.com");
    serviceRequest.setUserpassword("Userpassword1!");
    serviceRequest.setUserType(UserType.PRIVATE);
    serviceRequest.setSessionId(createApplicationSesstion.getSessionId());
    final RegisterUserResponse response = (RegisterUserResponse) applicationManager.service(serviceRequest);
    assertNotNull("Expect a result", response);
    assertEquals(EXPECT_SUCCESS, ServiceResult.SUCCESS, response.getResult());
    final DataContainer<UserAccount, Long> dataContainer = applicationManager.getDataContainer(UserAccount.class);
    final List<UserAccount> allBy = dataContainer.getAllBy(UserAccount_.username, serviceRequest.getUsername());
    assertEquals(1, allBy.size());
    final LoginRequest loginRequest = new LoginRequest();
    loginRequest.setEmail(serviceRequest.getEmail());
    loginRequest.setSessionId(serviceRequest.getSessionId());
    loginRequest.setUserpassword(serviceRequest.getUserpassword());
    final LoginResponse loginResponse = (LoginResponse) applicationManager.service(loginRequest);
    assertNotNull("Expect a result", loginResponse);
    assertEquals(EXPECT_SUCCESS, ServiceResult.SUCCESS, loginResponse.getResult());
}
Also used : LoginResponse(com.hack23.cia.service.api.action.application.LoginResponse) CreateApplicationSessionRequest(com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest) RegisterUserRequest(com.hack23.cia.service.api.action.application.RegisterUserRequest) RegisterUserResponse(com.hack23.cia.service.api.action.application.RegisterUserResponse) LoginRequest(com.hack23.cia.service.api.action.application.LoginRequest) UserAccount(com.hack23.cia.model.internal.application.user.impl.UserAccount) Required(org.databene.contiperf.Required) PerfTest(org.databene.contiperf.PerfTest) Test(org.junit.Test) AbstractServiceFunctionalIntegrationTest(com.hack23.cia.service.impl.AbstractServiceFunctionalIntegrationTest) PerfTest(org.databene.contiperf.PerfTest)

Example 23 with CreateApplicationSessionRequest

use of com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest in project cia by Hack23.

the class LoginServiceITest method serviceLoginRequestUserBlockedByMaxSessionAttempTest.

/**
 * Service login request user blocked by max session attemp test.
 *
 * @throws Exception
 *             the exception
 */
@Test
public void serviceLoginRequestUserBlockedByMaxSessionAttempTest() throws Exception {
    final CreateApplicationSessionRequest createApplicationSesstion = createApplicationSesstionWithRoleAnonymous();
    final RegisterUserRequest serviceRequest = new RegisterUserRequest();
    serviceRequest.setCountry("Sweden");
    serviceRequest.setUsername(UUID.randomUUID().toString());
    serviceRequest.setEmail(serviceRequest.getUsername() + "@email.com");
    serviceRequest.setUserpassword("Userpassword1!");
    serviceRequest.setUserType(UserType.PRIVATE);
    serviceRequest.setSessionId(createApplicationSesstion.getSessionId());
    final RegisterUserResponse response = (RegisterUserResponse) applicationManager.service(serviceRequest);
    assertNotNull("Expect a result", response);
    assertEquals(EXPECT_SUCCESS, ServiceResult.SUCCESS, response.getResult());
    final DataContainer<UserAccount, Long> dataContainer = applicationManager.getDataContainer(UserAccount.class);
    final List<UserAccount> allBy = dataContainer.getAllBy(UserAccount_.username, serviceRequest.getUsername());
    assertEquals(1, allBy.size());
    final CreateApplicationSessionRequest newApplicationSesstion = createApplicationSesstionWithRoleAnonymous();
    for (int i = 0; i < 6; i++) {
        final LoginRequest loginRequest = new LoginRequest();
        loginRequest.setEmail(serviceRequest.getEmail() + "someotheruser");
        loginRequest.setSessionId(newApplicationSesstion.getSessionId());
        loginRequest.setUserpassword(serviceRequest.getUserpassword() + "wrongpassword");
        final LoginResponse loginResponse = (LoginResponse) applicationManager.service(loginRequest);
        assertNotNull("Expect a result", loginResponse);
        assertEquals(ServiceResult.FAILURE, loginResponse.getResult());
        assertEquals(LoginResponse.ErrorMessage.USERNAME_OR_PASSWORD_DO_NOT_MATCH.toString(), loginResponse.getErrorMessage());
    }
    final LoginRequest loginRequest = new LoginRequest();
    loginRequest.setEmail(serviceRequest.getEmail());
    loginRequest.setSessionId(newApplicationSesstion.getSessionId());
    loginRequest.setUserpassword(serviceRequest.getUserpassword());
    final LoginResponse loginResponse = (LoginResponse) applicationManager.service(loginRequest);
    assertNotNull("Expect a result", loginResponse);
    assertEquals(ServiceResult.FAILURE, loginResponse.getResult());
    assertEquals(LoginResponse.ErrorMessage.USERNAME_OR_PASSWORD_DO_NOT_MATCH.toString(), loginResponse.getErrorMessage());
}
Also used : LoginResponse(com.hack23.cia.service.api.action.application.LoginResponse) CreateApplicationSessionRequest(com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest) RegisterUserRequest(com.hack23.cia.service.api.action.application.RegisterUserRequest) RegisterUserResponse(com.hack23.cia.service.api.action.application.RegisterUserResponse) LoginRequest(com.hack23.cia.service.api.action.application.LoginRequest) UserAccount(com.hack23.cia.model.internal.application.user.impl.UserAccount) PerfTest(org.databene.contiperf.PerfTest) Test(org.junit.Test) AbstractServiceFunctionalIntegrationTest(com.hack23.cia.service.impl.AbstractServiceFunctionalIntegrationTest)

Example 24 with CreateApplicationSessionRequest

use of com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest in project cia by Hack23.

the class LoginServiceITest method serviceLoginRequestUserPasswordDoNotMatchFailureTest.

/**
 * Service login request user password do not match failure test.
 *
 * @throws Exception
 *             the exception
 */
@Test
public void serviceLoginRequestUserPasswordDoNotMatchFailureTest() throws Exception {
    final CreateApplicationSessionRequest createApplicationSesstion = createApplicationSesstionWithRoleAnonymous();
    final RegisterUserRequest serviceRequest = new RegisterUserRequest();
    serviceRequest.setCountry("Sweden");
    serviceRequest.setUsername(UUID.randomUUID().toString());
    serviceRequest.setEmail(serviceRequest.getUsername() + "@email.com");
    serviceRequest.setUserpassword("Userpassword1!");
    serviceRequest.setUserType(UserType.PRIVATE);
    serviceRequest.setSessionId(createApplicationSesstion.getSessionId());
    final RegisterUserResponse response = (RegisterUserResponse) applicationManager.service(serviceRequest);
    assertNotNull("Expect a result", response);
    assertEquals(EXPECT_SUCCESS, ServiceResult.SUCCESS, response.getResult());
    final DataContainer<UserAccount, Long> dataContainer = applicationManager.getDataContainer(UserAccount.class);
    final List<UserAccount> allBy = dataContainer.getAllBy(UserAccount_.username, serviceRequest.getUsername());
    assertEquals(1, allBy.size());
    final LoginRequest loginRequest = new LoginRequest();
    loginRequest.setEmail(serviceRequest.getEmail());
    loginRequest.setSessionId(serviceRequest.getSessionId());
    loginRequest.setUserpassword(serviceRequest.getUserpassword() + "wrongpassword");
    final LoginResponse loginResponse = (LoginResponse) applicationManager.service(loginRequest);
    assertNotNull("Expect a result", loginResponse);
    assertEquals(ServiceResult.FAILURE, loginResponse.getResult());
    assertEquals(LoginResponse.ErrorMessage.USERNAME_OR_PASSWORD_DO_NOT_MATCH.toString(), loginResponse.getErrorMessage());
}
Also used : LoginResponse(com.hack23.cia.service.api.action.application.LoginResponse) CreateApplicationSessionRequest(com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest) RegisterUserRequest(com.hack23.cia.service.api.action.application.RegisterUserRequest) RegisterUserResponse(com.hack23.cia.service.api.action.application.RegisterUserResponse) LoginRequest(com.hack23.cia.service.api.action.application.LoginRequest) UserAccount(com.hack23.cia.model.internal.application.user.impl.UserAccount) PerfTest(org.databene.contiperf.PerfTest) Test(org.junit.Test) AbstractServiceFunctionalIntegrationTest(com.hack23.cia.service.impl.AbstractServiceFunctionalIntegrationTest)

Example 25 with CreateApplicationSessionRequest

use of com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest in project cia by Hack23.

the class LoginServiceITest method serviceLoginRequestUserBlockedByMaxUserAttempTest.

/**
 * Service login request user blocked by max user attemp test.
 *
 * @throws Exception
 *             the exception
 */
@Test
public void serviceLoginRequestUserBlockedByMaxUserAttempTest() throws Exception {
    final CreateApplicationSessionRequest createApplicationSesstion = createApplicationSesstionWithRoleAnonymous();
    final RegisterUserRequest serviceRequest = new RegisterUserRequest();
    serviceRequest.setCountry("Sweden");
    serviceRequest.setUsername(UUID.randomUUID().toString());
    serviceRequest.setEmail(serviceRequest.getUsername() + "@email.com");
    serviceRequest.setUserpassword("Userpassword1!");
    serviceRequest.setUserType(UserType.PRIVATE);
    serviceRequest.setSessionId(createApplicationSesstion.getSessionId());
    final RegisterUserResponse response = (RegisterUserResponse) applicationManager.service(serviceRequest);
    assertNotNull("Expect a result", response);
    assertEquals(EXPECT_SUCCESS, ServiceResult.SUCCESS, response.getResult());
    final DataContainer<UserAccount, Long> dataContainer = applicationManager.getDataContainer(UserAccount.class);
    final List<UserAccount> allBy = dataContainer.getAllBy(UserAccount_.username, serviceRequest.getUsername());
    assertEquals(1, allBy.size());
    for (int i = 0; i < 6; i++) {
        final CreateApplicationSessionRequest newApplicationSesstion = createApplicationSesstionWithRoleAnonymous();
        final LoginRequest loginRequest = new LoginRequest();
        loginRequest.setEmail(serviceRequest.getEmail());
        loginRequest.setSessionId(newApplicationSesstion.getSessionId());
        loginRequest.setUserpassword(serviceRequest.getUserpassword() + "wrongpassword");
        final LoginResponse loginResponse = (LoginResponse) applicationManager.service(loginRequest);
        assertNotNull("Expect a result", loginResponse);
        assertEquals(ServiceResult.FAILURE, loginResponse.getResult());
        assertEquals(LoginResponse.ErrorMessage.USERNAME_OR_PASSWORD_DO_NOT_MATCH.toString(), loginResponse.getErrorMessage());
    }
    final LoginRequest loginRequest = new LoginRequest();
    loginRequest.setEmail(serviceRequest.getEmail());
    loginRequest.setSessionId(serviceRequest.getSessionId());
    loginRequest.setUserpassword(serviceRequest.getUserpassword());
    final LoginResponse loginResponse = (LoginResponse) applicationManager.service(loginRequest);
    assertNotNull("Expect a result", loginResponse);
    assertEquals(ServiceResult.FAILURE, loginResponse.getResult());
    assertEquals(LoginResponse.ErrorMessage.USERNAME_OR_PASSWORD_DO_NOT_MATCH.toString(), loginResponse.getErrorMessage());
}
Also used : LoginResponse(com.hack23.cia.service.api.action.application.LoginResponse) CreateApplicationSessionRequest(com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest) RegisterUserRequest(com.hack23.cia.service.api.action.application.RegisterUserRequest) RegisterUserResponse(com.hack23.cia.service.api.action.application.RegisterUserResponse) LoginRequest(com.hack23.cia.service.api.action.application.LoginRequest) UserAccount(com.hack23.cia.model.internal.application.user.impl.UserAccount) PerfTest(org.databene.contiperf.PerfTest) Test(org.junit.Test) AbstractServiceFunctionalIntegrationTest(com.hack23.cia.service.impl.AbstractServiceFunctionalIntegrationTest)

Aggregations

CreateApplicationSessionRequest (com.hack23.cia.service.api.action.application.CreateApplicationSessionRequest)29 AbstractServiceFunctionalIntegrationTest (com.hack23.cia.service.impl.AbstractServiceFunctionalIntegrationTest)27 Test (org.junit.Test)27 RegisterUserRequest (com.hack23.cia.service.api.action.application.RegisterUserRequest)14 RegisterUserResponse (com.hack23.cia.service.api.action.application.RegisterUserResponse)14 UserAccount (com.hack23.cia.model.internal.application.user.impl.UserAccount)13 PerfTest (org.databene.contiperf.PerfTest)13 LoginRequest (com.hack23.cia.service.api.action.application.LoginRequest)7 LoginResponse (com.hack23.cia.service.api.action.application.LoginResponse)7 Required (org.databene.contiperf.Required)7 ApplicationSession (com.hack23.cia.model.internal.application.system.impl.ApplicationSession)5 ServiceResponse (com.hack23.cia.service.api.action.common.ServiceResponse)5 ManageUserAccountRequest (com.hack23.cia.service.api.action.admin.ManageUserAccountRequest)4 ManageUserAccountResponse (com.hack23.cia.service.api.action.admin.ManageUserAccountResponse)4 ApplicationConfiguration (com.hack23.cia.model.internal.application.system.impl.ApplicationConfiguration)3 CreateApplicationSessionResponse (com.hack23.cia.service.api.action.application.CreateApplicationSessionResponse)3 LogoutRequest (com.hack23.cia.service.api.action.application.LogoutRequest)3 SendEmailRequest (com.hack23.cia.service.api.action.admin.SendEmailRequest)2 SendEmailResponse (com.hack23.cia.service.api.action.admin.SendEmailResponse)2 UpdateApplicationConfigurationRequest (com.hack23.cia.service.api.action.admin.UpdateApplicationConfigurationRequest)2