コード例 #1
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test(expected = AuthenticationException.class)
 public void userNotFound() {
   LoginRequest request = new LoginRequest();
   request.setPassword("password");
   request.setUsername(createRandomEmailAddress());
   userService.login(request);
 }
コード例 #2
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test(expected = ValidationException.class)
 public void invalidLoginRequestEmailMalformed() {
   LoginRequest request = new LoginRequest();
   request.setPassword("password");
   request.setUsername("NOTaValidEmailAddress");
   userService.login(request);
 }
コード例 #3
0
 @Test
 public void invalidEmailAddress() {
   LoginRequest request = new LoginRequest();
   request.setPassword(RandomStringUtils.randomAlphanumeric(8));
   Set<ConstraintViolation<LoginRequest>> constraints = validator.validate(request);
   assertThat(constraints.size(), is(1));
 }
コード例 #4
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test(expected = ValidationException.class)
 public void invalidLoginRequestEmailHasSpace() {
   LoginRequest request = new LoginRequest();
   request.setPassword("password");
   request.setUsername("my username");
   userService.login(request);
 }
コード例 #5
0
 @Test
 public void invalidPassword() {
   LoginRequest request = new LoginRequest();
   request.setUsername(RandomStringUtils.randomAlphabetic(8) + "@example.com");
   request.setPassword(RandomStringUtils.randomAlphanumeric(7));
   Set<ConstraintViolation<LoginRequest>> constraints = validator.validate(request);
   assertThat(constraints.size(), is(1));
 }
コード例 #6
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test(expected = AuthenticationException.class)
 public void invalidPassword() {
   CreateUserRequest request = getDefaultCreateUserRequest();
   ExternalUser user = userService.createUser(request, Role.authenticated);
   LoginRequest loginRequest = new LoginRequest();
   loginRequest.setUsername(request.getUser().getEmailAddress());
   loginRequest.setPassword("qwerty123");
   userService.login(loginRequest);
 }
コード例 #7
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
  @Test
  public void multipleLoginsGetDifferentSessionToken() {
    CreateUserRequest request = getDefaultCreateUserRequest();
    ExternalUser createdUser = userService.createUser(request, Role.authenticated);
    String sessionToken = createdUser.getSessions().get(0).getSessionToken();
    LoginRequest loginRequest = new LoginRequest();
    loginRequest.setUsername(request.getUser().getEmailAddress());
    loginRequest.setPassword(request.getPassword().getPassword());
    String session1 = userService.login(loginRequest).getSessions().get(0).getSessionToken();
    String session2 = userService.login(loginRequest).getSessions().get(0).getSessionToken();

    assertThat(session1, is(not(session2)));
  }
コード例 #8
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
  @Test
  public void cleanUpExpiredSessions() {

    CreateUserRequest request = getDefaultCreateUserRequest();
    ExternalUser createdUser = userService.createUser(request, Role.authenticated);
    LoginRequest loginRequest = new LoginRequest();
    loginRequest.setUsername(request.getUser().getEmailAddress());
    loginRequest.setPassword(request.getPassword().getPassword());
    userService.login(loginRequest).getSessions().get(0).getSessionToken();
    userService.login(loginRequest).getSessions().get(0).getSessionToken();
    userService.deleteExpiredSessions(-1);
    ExternalUser externalUser = userService.getUser(createdUser, createdUser.getId());
    assertThat(externalUser.getSessions().size(), is(0));
  }
コード例 #9
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test
 public void validLoginWithEmailAddress() throws Exception {
   CreateUserRequest request = getDefaultCreateUserRequest();
   ExternalUser createdUser = userService.createUser(request, Role.authenticated);
   String sessionToken = createdUser.getSessions().get(0).getSessionToken();
   LoginRequest loginRequest = new LoginRequest();
   loginRequest.setUsername(request.getUser().getEmailAddress());
   loginRequest.setPassword(request.getPassword().getPassword());
   ExternalUser loggedInUser = userService.login(loginRequest);
   assertThat(loggedInUser.getId().toString(), is(createdUser.getId().toString()));
   assertThat(loggedInUser.getSessions().get(0), is(notNullValue()));
   // check that a new token was issued
   assertThat(loggedInUser.getSessions().get(0).getSessionToken(), is(not(sessionToken)));
   assertThat(loggedInUser.isVerified(), is(false));
 }
コード例 #10
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test
 public void saveActiveSession() {
   CreateUserRequest request = getDefaultCreateUserRequest();
   ExternalUser createdUser = userService.createUser(request, Role.authenticated);
   UserSession sessionToken1 = createdUser.getSessions().get(0);
   LoginRequest loginRequest = new LoginRequest();
   loginRequest.setUsername(request.getUser().getEmailAddress());
   loginRequest.setPassword(request.getPassword().getPassword());
   UserSession sessionToken2 = userService.login(loginRequest).getSessions().get(0);
   createdUser.setActiveSession(sessionToken1);
   userService.saveUserSession(createdUser);
   ExternalUser updatedUser = userService.getUser(createdUser, createdUser.getId());
   // most recently used token
   assertThat(
       updatedUser.getSessions().get(0).getSessionToken(), is(sessionToken1.getSessionToken()));
 }
コード例 #11
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test
 public void getMostRecentSession() {
   CreateUserRequest request = getDefaultCreateUserRequest();
   ExternalUser createdUser = userService.createUser(request, Role.authenticated);
   String sessionToken = createdUser.getSessions().get(0).getSessionToken();
   LoginRequest loginRequest = new LoginRequest();
   loginRequest.setUsername(request.getUser().getEmailAddress());
   loginRequest.setPassword(request.getPassword().getPassword());
   String session1 = userService.login(loginRequest).getSessions().get(0).getSessionToken();
   String session2 = userService.login(loginRequest).getSessions().get(0).getSessionToken();
   ExternalUser updatedUser = userService.getUser(createdUser, createdUser.getId());
   assertThat(updatedUser.getSessions().size(), is(3));
   assertThat(updatedUser.getActiveSession(), is(nullValue()));
   assertThat(
       updatedUser.getSessions().get(0).getSessionToken(),
       is(session2)); // most recently updated session
 }
コード例 #12
0
  public void login() throws LogonException {

    // Make sure user is not already logged on
    if (session.alreadyLoggedOn()) throw new LogonException("Already Logged On; Session Exists");

    LoginRequest loginRequest = new LoginRequest();
    loginRequest.setUserName(session.getUserName());

    LoginResponse loginResponse = (LoginResponse) wsTemplate.marshalSendAndReceive(loginRequest);
    System.out.println("login response = " + loginResponse.getSessionId());

    // See if the server returned an error.  If so, throw it to caller as an exception
    if (loginResponse.getSessionId().equalsIgnoreCase("Already Logged On"))
      throw new LogonException(loginResponse.getSessionId());

    session.setSessionId(loginResponse.getSessionId());
  }
コード例 #13
0
ファイル: LoginSession.java プロジェクト: xdcbaby/game
  @Override
  public void messageReceived(Object message) throws IOException {
    LoginRequest request = (LoginRequest) message;
    if (request.getServerSessionKey() != serverSessionKey)
      throw new IOException("Server session key mismatch.");

    boolean versionMismatch = false;
    if (request.getVersion() != server.getVersion()) versionMismatch = true;

    ChecksumTable table = server.getChecksumTable();
    int[] crc = request.getCrc();
    for (int i = 0; i < crc.length; i++) {
      if (table.getEntry(i).getCrc() != crc[i]) {
        versionMismatch = true;
        break;
      }
    }

    if (versionMismatch) {
      sendLoginFailure(LoginResponse.STATUS_GAME_UPDATED);
      return;
    }

    long clientSessionKey = request.getClientSessionKey();
    long serverSessionKey = request.getServerSessionKey();
    int[] seed = new int[4];
    seed[0] = (int) (clientSessionKey >> 32);
    seed[1] = (int) clientSessionKey;
    seed[2] = (int) (serverSessionKey >> 32);
    seed[3] = (int) serverSessionKey;

    inRandom = new IsaacRandom(seed);
    for (int i = 0; i < seed.length; i++) seed[i] += 50;
    outRandom = new IsaacRandom(seed);
    displayMode = request.getDisplayMode();

    service.addLoginRequest(this, request);
  }
コード例 #14
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test(expected = ValidationException.class)
 public void invalidLoginRequestNullEmailAddress() {
   LoginRequest request = new LoginRequest();
   request.setPassword("password");
   userService.login(request);
 }
コード例 #15
0
ファイル: UserServiceTest.java プロジェクト: Sathis/rest-java
 @Test(expected = ValidationException.class)
 public void invalidLoginRequestNullPassword() {
   LoginRequest request = new LoginRequest();
   request.setUsername(createRandomEmailAddress());
   userService.login(request);
 }
コード例 #16
0
ファイル: MockSession.java プロジェクト: philrange/DayTrader
 @Override
 public AccountDetails getAccountDetails() {
   return new AccountDetails(123, loginRequest.toString(), "GBP", "legal entity", "locale", true);
 }