@Test public void testLoginAsyncWithAuthTypeCreated() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); mockResponse.put("authData", generateMockAuthData()); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(mockResponse, 201, "OK"); // Make test user auth data Map<String, String> facebookAuthInfoMap = new HashMap<>(); facebookAuthInfoMap.put("token", "test"); NetworkUserController controller = new NetworkUserController(restClient, true); ParseUser.State newState = ParseTaskUtils.wait( controller.logInAsync("facebook", facebookAuthInfoMap)); // Verify user state verifyBasicUserState(mockResponse, newState); assertTrue(newState.isNew()); assertTrue(newState.isComplete()); }
@Test public void testLoginAsyncWithAuthTypeNotCreated() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); mockResponse.put("authData", generateMockAuthData()); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(mockResponse, 200, "OK"); // Make test user auth data Map<String, String> facebookAuthInfoMap = new HashMap<>(); facebookAuthInfoMap.put("token", "test"); NetworkUserController controller = new NetworkUserController(restClient, true); ParseUser.State newState = ParseTaskUtils.wait( controller.logInAsync("facebook", facebookAuthInfoMap)); // Verify user state verifyBasicUserState(mockResponse, newState); assertFalse(newState.isNew()); assertTrue(newState.isComplete()); }
@Test public void testLoginAsyncWithUserStateCreated() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(mockResponse, 201, "OK"); // Make test user state and operationSet ParseUser.State state = new ParseUser.State.Builder() .put("username", "testUserName") .put("password", "testPassword") .build(); ParseOperationSet operationSet = new ParseOperationSet(); operationSet.put("username", new ParseSetOperation("testUserName")); operationSet.put("password", new ParseSetOperation("testPassword")); NetworkUserController controller = new NetworkUserController(restClient, true); ParseUser.State newState = ParseTaskUtils.wait(controller.logInAsync(state, operationSet)); // Verify user state verifyBasicUserState(mockResponse, newState); assertTrue(newState.isNew()); assertFalse(newState.isComplete()); }
@Test public void testSignUpAsync() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(generateBasicMockResponse(), 200, "OK"); // Make test user state and operationSet ParseUser.State state = new ParseUser.State.Builder() .put("username", "testUserName") .put("password", "testPassword") .build(); ParseOperationSet operationSet = new ParseOperationSet(); operationSet.put("username", new ParseSetOperation("testUserName")); operationSet.put("password", new ParseSetOperation("testPassword")); NetworkUserController controller = new NetworkUserController(restClient, true); ParseUser.State newState = ParseTaskUtils.wait( controller.signUpAsync(state, operationSet, "sessionToken")); verifyBasicUserState(mockResponse, newState); assertFalse(newState.isComplete()); assertTrue(newState.isNew()); }
@Test public void testLoginAsyncWithUserStateNotCreated() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(mockResponse, 200, "OK"); // Make test user state and operationSet ParseUser.State state = new ParseUser.State.Builder() .put("username", "testUserName") .put("password", "testPassword") .build(); ParseOperationSet operationSet = new ParseOperationSet(); operationSet.put("username", new ParseSetOperation("testUserName")); operationSet.put("password", new ParseSetOperation("testPassword")); NetworkUserController controller = new NetworkUserController(restClient, true); ParseUser.State newState = ParseTaskUtils.wait(controller.logInAsync(state, operationSet)); // Verify user state verifyBasicUserState(mockResponse, newState); assertFalse(newState.isNew()); assertTrue(newState.isComplete()); }
@Test public void testLoginAsyncWithUserNameAndPassword() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(mockResponse, 200, "OK"); NetworkUserController controller = new NetworkUserController(restClient); ParseUser.State newState = ParseTaskUtils.wait(controller.logInAsync("userName", "password")); // Verify user state verifyBasicUserState(mockResponse, newState); assertTrue(newState.isComplete()); assertFalse(newState.isNew()); }
@Test public void testGetUserAsync() throws Exception { // Make mock response and client JSONObject mockResponse = generateBasicMockResponse(); ParseHttpClient restClient = ParseTestUtils.mockParseHttpClientWithResponse(mockResponse, 201, "OK"); NetworkUserController controller = new NetworkUserController(restClient, true); ParseUser.State newState = ParseTaskUtils.wait(controller.getUserAsync("sessionToken")); // Verify user state verifyBasicUserState(mockResponse, newState); assertTrue(newState.isComplete()); assertFalse(newState.isNew()); }
/* package */ Builder(State state) { super(state); isNew = state.isNew(); }
/** * Indicates whether this {@code ParseUser} was created during this session through a call to * {@link #signUp()} or by logging in with a linked service such as Facebook. */ public boolean isNew() { return getState().isNew(); }
@Override public Builder apply(ParseObject.State other) { isNew(((State) other).isNew()); return super.apply(other); }