diff options
Diffstat (limited to 'org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryCredentialsTest.java')
-rw-r--r-- | org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryCredentialsTest.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryCredentialsTest.java b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryCredentialsTest.java index dcec4ed99..554498487 100644 --- a/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryCredentialsTest.java +++ b/org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasks/tests/TaskRepositoryCredentialsTest.java @@ -159,4 +159,46 @@ public class TaskRepositoryCredentialsTest extends TestCase { assertEquals("Time stamp set", stamp.getTime(), taskRepository.getConfigurationDate().getTime()); } + public void testDoNotPersistCredentials() throws Exception { + TaskRepository repository = new TaskRepository("kind", "http://url"); + repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "pwd"), true); + assertEquals("pwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + + repository.setShouldPersistCredentials(false); + repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "newpwd"), true); + assertEquals("newpwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + + repository.setShouldPersistCredentials(true); + assertEquals("pwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + } + + public void testSetCredentialsDoesNotAffectExistingRepositoryWhenShouldNotPersistIsSetToTrue() throws Exception { + TaskRepository repository = new TaskRepository("kind", "http://url"); + repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "pwd"), true); + assertEquals("pwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + + TaskRepository newRepository = new TaskRepository("kind", "http://url"); + newRepository.setShouldPersistCredentials(false); + newRepository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("newuser", "newpwd"), + true); + assertEquals("pwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + assertEquals("newpwd", newRepository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + + repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "pwd2"), true); + assertEquals("pwd2", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + assertEquals("newpwd", newRepository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + } + + public void testSetCredentialsAffectExistingRepository() throws Exception { + TaskRepository repository = new TaskRepository("kind", "http://url"); + repository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("user", "pwd"), true); + assertEquals("pwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + + TaskRepository newRepository = new TaskRepository("kind", "http://url"); + newRepository.setCredentials(AuthenticationType.REPOSITORY, new AuthenticationCredentials("newuser", "newpwd"), + true); + assertEquals("newpwd", repository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + assertEquals("newpwd", newRepository.getCredentials(AuthenticationType.REPOSITORY).getPassword()); + } + } |