Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoberto E. Escobar2014-01-22 22:01:52 +0000
committerRyan D. Brooks2014-01-22 22:01:52 +0000
commit24105a2f425add8aa4afd2606b81c9ab401d637b (patch)
treedd14d8d450043f88cf32c377e2cdc8056e1a5353 /plugins/org.eclipse.osee.account.admin.test
parentef5e93647692f868f2f1daf614831471430a181d (diff)
downloadorg.eclipse.osee-24105a2f425add8aa4afd2606b81c9ab401d637b.tar.gz
org.eclipse.osee-24105a2f425add8aa4afd2606b81c9ab401d637b.tar.xz
org.eclipse.osee-24105a2f425add8aa4afd2606b81c9ab401d637b.zip
feature[ats_ATS8937]: Integrate AuthenticationAdmin
Diffstat (limited to 'plugins/org.eclipse.osee.account.admin.test')
-rw-r--r--plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java b/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java
index 65c0ef19d48..430212d6775 100644
--- a/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java
+++ b/plugins/org.eclipse.osee.account.admin.test/src/org/eclipse/osee/account/admin/internal/AccountAdminImplTest.java
@@ -38,6 +38,9 @@ import org.eclipse.osee.account.admin.AccountLoginRequestBuilder;
import org.eclipse.osee.account.admin.AccountPreferences;
import org.eclipse.osee.account.admin.CreateAccountRequest;
import org.eclipse.osee.account.admin.ds.AccountStorage;
+import org.eclipse.osee.authentication.admin.AuthenticatedUser;
+import org.eclipse.osee.authentication.admin.AuthenticationAdmin;
+import org.eclipse.osee.authentication.admin.AuthenticationRequest;
import org.eclipse.osee.framework.jdk.core.type.Identifiable;
import org.eclipse.osee.framework.jdk.core.type.OseeArgumentException;
import org.eclipse.osee.framework.jdk.core.type.ResultSet;
@@ -72,15 +75,18 @@ public class AccountAdminImplTest {
// @formatter:off
@Mock private Log logger;
@Mock private AccountStorage storage;
+ @Mock private AuthenticationAdmin authenticationAdmin;
@Mock private CreateAccountRequest request;
@Mock private Account account;
@Mock private AccountAccess accountAccess;
@Mock private AccountPreferences preferences;
@Mock private Identifiable<String> newAccount;
+ @Mock private AuthenticatedUser authenticatedUser;
@Captor private ArgumentCaptor<Map<String, String>> newPrefsCaptor;
@Captor private ArgumentCaptor<String> tokenCaptor;
@Captor private ArgumentCaptor<AccessDetails> accessDetailsCaptor;
+ @Captor private ArgumentCaptor<AuthenticationRequest> authenticationRequestCaptor;
// @formatter:on
private AccountAdminImpl accountAdmin;
@@ -92,6 +98,7 @@ public class AccountAdminImplTest {
accountAdmin = new AccountAdminImpl();
accountAdmin.setLogger(logger);
accountAdmin.setAccountStorage(storage);
+ accountAdmin.setAuthenticationAdmin(authenticationAdmin);
accountAdmin.start(Collections.<String, Object> emptyMap());
when(newAccount.getGuid()).thenReturn(UUID);
@@ -621,10 +628,21 @@ public class AccountAdminImplTest {
.accessedBy(accessDetails)//
.build();
+ when(authenticationAdmin.authenticate(any(AuthenticationRequest.class))).thenReturn(authenticatedUser);
+ when(authenticatedUser.getName()).thenReturn(EMAIL);
+
thrown.expect(AccountLoginException.class);
thrown.expectMessage("Login Error - Unable to find account for username[" + userName + "] using authentication scheme[" + scheme + "] and userId[" + userName + "]");
accountAdmin.login(request);
+
verify(storage, times(0)).createAccountAccess(anyString(), any(Account.class), any(AccessDetails.class));
+
+ verify(authenticationAdmin).authenticate(authenticationRequestCaptor.capture());
+
+ AuthenticationRequest authRequest = authenticationRequestCaptor.getValue();
+ assertEquals(scheme, authRequest.getScheme());
+ assertEquals(userName, authRequest.getUserName());
+ assertEquals(password, authRequest.getPassword());
}
@Test
@@ -640,6 +658,8 @@ public class AccountAdminImplTest {
when(storage.getAccountByEmail(EMAIL)).thenReturn(resultSet);
when(storage.createAccountAccess(anyString(), eq(account), any(AccessDetails.class))).thenReturn(access);
+ when(authenticationAdmin.authenticate(any(AuthenticationRequest.class))).thenReturn(authenticatedUser);
+ when(authenticatedUser.getName()).thenReturn(EMAIL);
AccountLoginRequest request = AccountLoginRequestBuilder.newBuilder()//
.userName(userName)//
@@ -658,6 +678,13 @@ public class AccountAdminImplTest {
AccessDetails actualDetails = accessDetailsCaptor.getValue();
assertEquals(remoteAddress, actualDetails.getRemoteAddress());
assertEquals(accessDetails, actualDetails.getAccessDetails());
+
+ verify(authenticationAdmin).authenticate(authenticationRequestCaptor.capture());
+
+ AuthenticationRequest authRequest = authenticationRequestCaptor.getValue();
+ assertEquals(scheme, authRequest.getScheme());
+ assertEquals(userName, authRequest.getUserName());
+ assertEquals(password, authRequest.getPassword());
}
@Test

Back to the top