public static Principal copyPrincipalData(Principal src, Principal dst) { if (src == null) { return null; } if (dst == null) { dst = new Principal(); } dst.id = src.id; dst.email = src.email; dst.type = src.type; dst.name = src.name; dst.password = src.password; return dst; }
private static List<Principal> transformGroupLinksToBasicPrincipals(Set<String> groupLinks, String defaultGroupLink) { List<Principal> principals = new ArrayList<>(); for (String groupLink : groupLinks) { if (groupLink == null || groupLink.trim().isEmpty()) { continue; } if (groupLink.equalsIgnoreCase(defaultGroupLink)) { continue; } Principal p = new Principal(); p.id = decode(Service.getId(groupLink)); principals.add(p); } return principals; }
private static Principal transformUserStateToBasicPrincipal(UserState state) { if (state == null) { return null; } Principal p = new Principal(); p.id = decode(Service.getId(state.documentSelfLink)); return p; }
public static Principal fromLocalPrincipalToPrincipal(LocalPrincipalState state) { if (state == null) { return null; } Principal principal = new Principal(); principal.email = state.email; principal.name = toPrincipalName(state); principal.id = state.id; principal.password = state.password; principal.type = PrincipalType.valueOf(state.type.name()); principal.source = PrincipalSource.LOCAL; return principal; }
@Before public void setup() { testLocalPrincipal = new LocalPrincipalState(); testLocalPrincipal.id = "test@admiral.com"; testLocalPrincipal.email = testLocalPrincipal.id; testLocalPrincipal.name = "Test User"; testLocalPrincipal.type = LocalPrincipalType.USER; testLocalPrincipal.documentSelfLink = "testSelfLink"; testPrincipal = new Principal(); testPrincipal.id = "test@admiral.com"; testPrincipal.email = testLocalPrincipal.id; testPrincipal.name = "Test User"; testPrincipal.type = PrincipalType.USER; }
@Test public void testFromPrincipalToLocalPrincipalOfTypeGroup() { Principal principal = new Principal(); principal.id = "superadmins"; principal.name = "Super Admins"; principal.type = PrincipalType.GROUP; LocalPrincipalState localPrincipal = fromPrincipalToLocalPrincipal(principal); assertEquals(principal.id, localPrincipal.id); assertEquals(principal.name, localPrincipal.name); assertEquals(LocalPrincipalType.GROUP, localPrincipal.type); }
@Test public void testCopyPrincipalData() { assertEquals(null, copyPrincipalData(null, new Principal())); Principal principal = new Principal(); assertEquals(principal, copyPrincipalData(principal, null)); principal = copyPrincipalData(testPrincipal, principal); assertEquals(testPrincipal.id, principal.id); assertEquals(testPrincipal.email, principal.email); assertEquals(testPrincipal.type, principal.type); assertEquals(testPrincipal.name, principal.name); assertEquals(testPrincipal.password, principal.password); } }
@Test public void testGetPrincipalsOfTypeGroup() { String principalId = "superusers@admiral.com"; DeferredResult<List<Principal>> result = provider.getPrincipals(null, principalId); TestContext ctx = testCreate(1); result.whenComplete((p, ex) -> { if (ex != null) { ctx.failIteration(ex); return; } ctx.completeIteration(); }); ctx.await(); Principal principal = result.getNow(Collections.singletonList(new Principal())).get(0); assertNotNull(principal); assertEquals(principalId, principal.id); assertEquals("superusers@admiral.com", principal.name); assertEquals(PrincipalType.GROUP, principal.type); }
@SuppressWarnings("unlikely-arg-type") @Test public void testPrincipalHashCodeEquals() { Principal p1 = new Principal(); Principal p2 = new Principal(); assertEquals(31, p1.hashCode()); assertFalse(p1.equals(null)); assertFalse(p1.equals(this)); assertTrue(p1.equals(p2)); p1.id = "name@domain"; assertNotEquals(31, p1.hashCode()); assertFalse(p1.equals(p2)); p2.id = "name2@domain"; assertFalse(p1.equals(p2)); p2.id = "name@domain"; assertTrue(p1.equals(p2)); }
ctx.await(); Principal principal = result.getNow(Collections.singletonList(new Principal())).get(0); assertNotNull(principal); assertEquals(lazyPeonUser.id, principal.id); ctx1.await(); principal = result.getNow(Collections.singletonList(new Principal())).get(0); assertNotNull(principal); assertEquals(lazyPeonUser.id, principal.id);
@Test public void testGetPrincipal() { String principalId = "connie@admiral.com"; DeferredResult<Principal> result = provider.getPrincipal(null, principalId); TestContext ctx = testCreate(1); result.whenComplete((p, ex) -> { if (ex != null) { ctx.failIteration(ex); return; } ctx.completeIteration(); }); ctx.await(); Principal principal = result.getNow(new Principal()); assertNotNull(principal); assertEquals(principalId, principal.email); assertEquals(principalId, principal.id); assertEquals("Connie", principal.name); assertEquals(PrincipalType.USER, principal.type); assertTrue(principal.groups.contains(USER_GROUP_DEVELOPERS)); }
@Test public void testUpdatePrincipal() { Principal principal = new Principal(); principal.type = PrincipalType.USER; principal.email = "test@admiral.com"; }); ctx.await(); principal = result.getNow(new Principal()); principal.name = "NewName"; result = provider.updatePrincipal(null, principal); ctx2.await(); Principal newPrincipal = result.getNow(new Principal());
@Test public void testCreatePrincipal() { Principal principal = new Principal(); principal.type = PrincipalType.USER; principal.email = "test@admiral.com"; ctx1.await(); Principal newPrincipal = result.getNow(new Principal()); assertNotNull(newPrincipal); assertEquals(principal.email, newPrincipal.email);