Task<Void> signUpTask = user.signUpAsync(Task.<Void>forResult(null));
signUpTask.waitForCompletion();
verify(currentUser, times(1)).checkForChangesToMutableContainers();
verify(currentUser, times(1)).copyChangesFrom(user);
verify(currentUser, times(1)).setUsername("userName");
<BUG>verify(currentUser, times(1)).setPassword("password");
verify(currentUser, times(1)).saveAsync(eq("oldSessionToken"), Matchers.<Task<Void>>any());
</BUG>
assertEquals("oldValue", user.get("oldKey"));
verify(currentUserController, times(1)).setAsync(eq(user));

Task<Void> signUpTask = user.signUpAsync(Task.<Void>forResult(null));
signUpTask.waitForCompletion();
verify(currentUser, times(1)).checkForChangesToMutableContainers();
verify(currentUser, times(1)).copyChangesFrom(user);
verify(currentUser, times(1)).setUsername("userName");
verify(currentUser, times(1)).setPassword("password");
verify(currentUser, times(1))
.saveAsync(eq("oldSessionToken"), eq(false), Matchers.<Task<Void>>any());
assertEquals("oldValue", user.get("oldKey"));
verify(currentUserController, times(1)).setAsync(eq(user));
