/** * Sets the username. Usernames cannot be null or blank. * * @param username The username to set. */ public void setUsername(String username) { put(KEY_USERNAME, username); }
/** * Sets the password. * * @param password The password to set. */ public void setPassword(String password) { put(KEY_PASSWORD, password); }
/** * Sets the email address. * * @param email The email address to set. */ public void setEmail(String email) { put(KEY_EMAIL, email); }
@Test public void testImmutableKeys() { ParseUser user = new ParseUser(); user.put("foo", "bar"); try { user.put("sessionToken", "blah"); } catch (IllegalArgumentException e) { assertTrue(e.getMessage().contains("Cannot modify")); } try { user.remove("sessionToken"); } catch (IllegalArgumentException e) { assertTrue(e.getMessage().contains("Cannot modify")); } try { user.removeAll("sessionToken", Collections.emptyList()); } catch (IllegalArgumentException e) { assertTrue(e.getMessage().contains("Cannot modify")); } }
@Test public void testSignUpAsyncWithNoCurrentUserAndSignUpFailure() { // Register a mock currentUserController to make getCurrentUser work ParseCurrentUserController currentUserController = mock(ParseCurrentUserController.class); when(currentUserController.getAsync(anyBoolean())) .thenReturn(Task.<ParseUser>forResult(null)); ParseCorePlugins.getInstance().registerCurrentUserController(currentUserController); // Register a mock userController to make logIn work ParseUserController userController = mock(ParseUserController.class); ParseException signUpException = new ParseException(ParseException.OTHER_CAUSE, "test"); when(userController.signUpAsync( any(ParseUser.State.class), any(ParseOperationSet.class), anyString())) .thenReturn(Task.<ParseUser.State>forError(signUpException)); ParseCorePlugins.getInstance().registerUserController(userController); ParseUser user = new ParseUser(); user.put("key", "value"); user.setUsername("userName"); user.setPassword("password"); Task<Void> signUpTask = user.signUpAsync(Task.<Void>forResult(null)); // Make sure we sign up the user verify(userController, times(1)).signUpAsync( any(ParseUser.State.class), any(ParseOperationSet.class), anyString()); // Make sure user's data is correct assertEquals("value", user.getString("key")); // Make sure we never set the current user verify(currentUserController, never()).setAsync(user); // Make sure task is failed assertTrue(signUpTask.isFaulted()); assertSame(signUpException, signUpTask.getError()); }
@Test public void testValidateSaveWithLDSNotEnabled() { // Register a mock currentUserController to make getCurrentUser work ParseUser currentUser = new ParseUser(); currentUser.setObjectId("test"); ParseCurrentUserController currentUserController = mock(ParseCurrentUserController.class); when(currentUserController.getAsync(anyBoolean())).thenReturn(Task.forResult(currentUser)); ParseCorePlugins.getInstance().registerCurrentUserController(currentUserController); ParseUser user = new ParseUser(); user.setObjectId("test"); // Make isDirty return true user.put("key", "value"); // Make isCurrent return false user.setIsCurrentUser(false); user.validateSave(); }
@Test public void testValidDelete() { // Register a mock currentUserController to make getCurrentUser work ParseUser currentUser = new ParseUser(); currentUser.setObjectId("test"); ParseCurrentUserController currentUserController = mock(ParseCurrentUserController.class); when(currentUserController.getAsync(anyBoolean())).thenReturn(Task.forResult(currentUser)); ParseCorePlugins.getInstance().registerCurrentUserController(currentUserController); ParseUser user = new ParseUser(); user.setObjectId("test"); // Make isDirty return true user.put("key", "value"); thrown.expect(IllegalArgumentException.class); thrown.expectMessage("Cannot delete a ParseUser that is not authenticated."); user.validateDelete(); }
@Test public void testValidateSaveWithLDSNotEnabledAndCurrentUserNotMatch() { // Register a mock currentUserController to make getCurrentUser work ParseUser currentUser = new ParseUser(); currentUser.setObjectId("testAgain"); ParseCurrentUserController currentUserController = mock(ParseCurrentUserController.class); when(currentUserController.getAsync(anyBoolean())).thenReturn(Task.forResult(currentUser)); ParseCorePlugins.getInstance().registerCurrentUserController(currentUserController); ParseUser user = new ParseUser(); user.setObjectId("test"); // Make isDirty return true user.put("key", "value"); // Make isCurrent return false user.setIsCurrentUser(false); thrown.expect(IllegalArgumentException.class); thrown.expectMessage("Cannot save a ParseUser that is not authenticated."); user.validateSave(); }
@Override public void done(ParseException e) { currentUser.put(Message.PROFILE_KEY, userProfile); currentUser.saveInBackground(); } });
@Override public void done(Profile p, ParseException e) { if (e == null) { // set profile on current user currentUser.put(Message.PROFILE_KEY, p); currentUser.saveInBackground(); // set default theme on user's profile p.setTheme(0); p.saveInBackground(); } } });
public void getStarted(View view){ String riderOrDriver = "rider"; if (riderOrDriverSwitch.isChecked()){ // **DRIVE MODE** riderOrDriver = "driver"; } else { // **RIDER MODE** riderOrDriver = "rider"; } //save the users option of rider/driver to parse then we redirectUser() ParseUser.getCurrentUser().put("riderOrDriver", riderOrDriver); ParseUser.getCurrentUser().saveInBackground(new SaveCallback() { @Override public void done(ParseException e) { if(e == null){ Log.i("MyApp", "user signed up"); redirectUser(); } else { } } }); }
user.put(USER_OBJECT_NAME_FIELD, name);