public static Subject principalNameToSubject(String name) { SingleUserPrincipal principal = new SingleUserPrincipal(name); Subject sub = new Subject(); sub.getPrincipals().add(principal); return sub; }
public Subject getSubject(String name) { Subject subject = new Subject(); SingleUserPrincipal user = new SingleUserPrincipal(name); subject.getPrincipals().add(user); return subject; }
public Subject getSubject(String name) { Subject subject = new Subject(); SingleUserPrincipal user = new SingleUserPrincipal(name); subject.getPrincipals().add(user); return subject; }
context.setRealPrincipal(new SingleUserPrincipal(userName)); userName = doAsUser; } else { Principal p = new SingleUserPrincipal(userName); principals.add(p);
private static ReqContext makeMockContext(String user) { ReqContext mockContext = Mockito.mock(ReqContext.class); Mockito.when(mockContext.principal()).thenReturn(new SingleUserPrincipal(user)); return mockContext; }
@Test public void test_populate_req_context_on_null_user() { try { DefaultHttpCredentialsPlugin handler = new DefaultHttpCredentialsPlugin(); handler.prepare(new HashMap()); Subject subject = new Subject(false, ImmutableSet.<Principal>of(new SingleUserPrincipal("test")), new HashSet<>(), new HashSet<>()); ReqContext context = new ReqContext(subject); Assert.assertEquals(0, handler .populateContext(context, Mockito.mock(HttpServletRequest.class)) .subject() .getPrincipals() .size() ); } finally { ReqContext.reset(); } } }
@Test public void test_getUserName() { DefaultHttpCredentialsPlugin handler = new DefaultHttpCredentialsPlugin(); handler.prepare(new HashMap()); Assert.assertNull("returns null when request is null", handler.getUserName(null)); Assert.assertNull("returns null when user principal is null", handler.getUserName(Mockito.mock( HttpServletRequest.class))); HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class); Mockito.when(mockRequest.getUserPrincipal()).thenReturn(new SingleUserPrincipal("")); Assert.assertNull("returns null when user is blank", handler.getUserName(mockRequest)); String expName = "Alice"; mockRequest = Mockito.mock(HttpServletRequest.class); Mockito.when(mockRequest.getUserPrincipal()).thenReturn(new SingleUserPrincipal(expName)); Assert.assertEquals("returns correct user from requests principal", expName, handler.getUserName(mockRequest)); try { String doAsUserName = "Bob"; mockRequest = Mockito.mock(HttpServletRequest.class); Mockito.when(mockRequest.getUserPrincipal()).thenReturn(new SingleUserPrincipal(expName)); Mockito.when(mockRequest.getHeader("doAsUser")).thenReturn(doAsUserName); ReqContext context = handler.populateContext(ReqContext.context(), mockRequest); Assert.assertTrue(context.isImpersonating()); Assert.assertEquals(expName, context.realPrincipal().getName()); Assert.assertEquals(doAsUserName, context.principal().getName()); } finally { ReqContext.reset(); } }
@Test public void testNotStrict() throws Exception { ReqContext jt = new ReqContext(new Subject()); SingleUserPrincipal jumpTopo = new SingleUserPrincipal("jump_topo"); jt.subject().getPrincipals().add(jumpTopo); SingleUserPrincipal jumpClient = new SingleUserPrincipal("jump_client"); jc.subject().getPrincipals().add(jumpClient); SingleUserPrincipal otherUser = new SingleUserPrincipal("other"); other.subject().getPrincipals().add(otherUser);
@Test public void testStrict() throws Exception { ReqContext jt = new ReqContext(new Subject()); SingleUserPrincipal jumpTopo = new SingleUserPrincipal("jump_topo"); jt.subject().getPrincipals().add(jumpTopo); SingleUserPrincipal jumpClient = new SingleUserPrincipal("jump_client"); jc.subject().getPrincipals().add(jumpClient); SingleUserPrincipal otherUser = new SingleUserPrincipal("other"); other.subject().getPrincipals().add(otherUser);
context.setRealPrincipal(new SingleUserPrincipal(userName)); userName = doAsUser; } else { Principal p = new SingleUserPrincipal(userName); principals.add(p);