@Test public void testStateParameter() { final MockIndirectClient client = new MockIndirectClient( TYPE, RedirectAction.redirect(LOGIN_URL), (Credentials) null, new CommonProfile()); final MockWebContext context = MockWebContext.create(); TestsHelper.expectException(() -> client.redirect(context)); }
@Test public void testNullCredentials() throws RequiresHttpAction { final MockIndirectClient client = new MockIndirectClient( TYPE, RedirectAction.redirect(LOGIN_URL), (Credentials) null, new CommonProfile()); final MockWebContext context = MockWebContext.create(); client.setCallbackUrl(CALLBACK_URL); assertNull(client.getUserProfile(null, context)); }
@Test public void testIndirectClientWithImmediate() throws RequiresHttpAction { final MockIndirectClient client = new MockIndirectClient( TYPE, RedirectAction.redirect(LOGIN_URL), (Credentials) null, new CommonProfile()); client.setCallbackUrl(CALLBACK_URL); final MockWebContext context = MockWebContext.create(); client.redirect(context); final String redirectionUrl = context.getResponseLocation(); assertEquals(LOGIN_URL, redirectionUrl); }
@Test public void testSaveAlreadyTried() throws RequiresHttpAction { final MockIndirectClient client = new MockIndirectClient( TYPE, RedirectAction.redirect(LOGIN_URL), (Credentials) null, new CommonProfile()); client.setCallbackUrl(CALLBACK_URL); final MockWebContext context = MockWebContext.create(); client.getCredentials(context); assertEquals( "true", (String) context.getSessionAttribute( client.getName() + IndirectClient.ATTEMPTED_AUTHENTICATION_SUFFIX)); }
@Test public void testAlreadyTried() { final MockIndirectClient client = new MockIndirectClient( TYPE, RedirectAction.redirect(LOGIN_URL), (Credentials) null, new CommonProfile()); client.setCallbackUrl(CALLBACK_URL); final MockWebContext context = MockWebContext.create(); context.setSessionAttribute( client.getName() + IndirectClient.ATTEMPTED_AUTHENTICATION_SUFFIX, "true"); final RequiresHttpAction e = (RequiresHttpAction) TestsHelper.expectException(() -> client.redirect(context)); assertEquals(401, e.getCode()); assertEquals(401, context.getResponseStatus()); }
@Test public void testAjaxRequest() { final MockIndirectClient client = new MockIndirectClient( TYPE, RedirectAction.redirect(LOGIN_URL), (Credentials) null, new CommonProfile()); client.setCallbackUrl(CALLBACK_URL); final MockWebContext context = MockWebContext.create() .addRequestHeader(HttpConstants.AJAX_HEADER_NAME, HttpConstants.AJAX_HEADER_VALUE); final RequiresHttpAction e = (RequiresHttpAction) TestsHelper.expectException(() -> client.redirect(context)); assertEquals(401, e.getCode()); assertEquals(401, context.getResponseStatus()); }