@Test public void testRedirect() { UiService service = new UiService(); service.setSelfLink("/sample"); service.setHost(new VerificationHost()); AtomicBoolean completionCalled = new AtomicBoolean(); service.handleGet(new Operation().setUri(UriUtils.buildUri("http://localhost/sample")) .setCompletion((o, e) -> { assertEquals("/sample/", o.getResponseHeader(Operation.LOCATION_HEADER)); completionCalled.set(true); })); assertTrue(completionCalled.get()); }
@Test public void testRedirectToBase() { UiService service = new UiService(); service.setSelfLink("/"); VerificationHost vh = new VerificationHost(); vh.setAuthorizationEnabled(true); vh.setAuthorizationContext(createAuthorizationContext(true)); service.setHost(vh); AtomicBoolean completionCalled = new AtomicBoolean(); service.handleGet(new Operation().setUri(UriUtils.buildUri("http://localhost/login/")) .setCompletion((o, e) -> { assertEquals("/", o.getResponseHeader(Operation.LOCATION_HEADER)); completionCalled.set(true); })); assertTrue(completionCalled.get()); }
@Test public void testRedirectToLogin() { UiService service = new UiService(); service.setSelfLink("/"); VerificationHost vh = new VerificationHost(); vh.setAuthorizationEnabled(true); vh.setAuthorizationContext(createAuthorizationContext(false)); service.setHost(vh); AtomicBoolean completionCalled = new AtomicBoolean(); service.handleGet(new Operation().setUri(UriUtils.buildUri("http://localhost/sample")) .setCompletion((o, e) -> { assertEquals("/login/", o.getResponseHeader(Operation.LOCATION_HEADER)); completionCalled.set(true); })); assertTrue(completionCalled.get()); }
@Test public void testForwardIndexHtmlWithXFrameOptions() { UiService service = new UiService(); service.setSelfLink("/"); VerificationHost vh = new VerificationHost() { @Override public void sendRequest(Operation op) { if (op.getUri().getPath().equals("/index.html")) { op.setBody("OK"); op.complete(); } else { op.fail(Operation.STATUS_CODE_NOT_FOUND); } } }; service.setHost(vh); AtomicBoolean completionCalled = new AtomicBoolean(); service.handleGet(new Operation().setUri(UriUtils.buildUri("http://localhost/")) .setCompletion((o, e) -> { assertEquals("OK", o.getBodyRaw()); assertEquals("DENY", o.getResponseHeader(ConfigurationUtil.UI_FRAME_OPTIONS_HEADER)); completionCalled.set(true); })); assertTrue(completionCalled.get()); }
service.handleGet(new Operation().setUri(UriUtils.buildUri("http://localhost/")) .setCompletion((o, e) -> { assertEquals("OK", o.getBodyRaw());