Refine search
@Test public void servletWriterAutoFlushedForChar() throws IOException { response.getWriter().write('X'); assertEquals("X", response.getContentAsString()); }
@Test public void testWidgetInjectorWithMultipleBodyTags() throws IOException, ServletException { final MockHttpServletResponse servletResponse = new MockHttpServletResponse(); final String html = "<html><body></body><body></body><body></body><body>asdf</body></html>"; httpRequestMonitorFilter.doFilter(requestWithAccept("text/html"), servletResponse, writeInResponseWhenCallingDoFilter(html)); assertThat(servletResponse.getContentAsString()).startsWith("<html><body></body><body></body><body></body><body>asdf"); assertThat(servletResponse.getContentAsString()).endsWith("</body></html>"); assertThat(servletResponse.getContentAsString()).contains("window.StagemonitorLoaded"); }
private void validateView(View view, HttpStatus status) { MockHttpServletResponse response = new MockHttpServletResponse(); try { view.render(new HashMap<String, Object>(), new MockHttpServletRequest(), response); assertNotNull(response.getContentAsString()); } catch (Exception e) { fail("view should render correct status and body"); } assertEquals(status.value(), response.getStatus()); }
@Test public void servletWriterAutoFlushedForString() throws IOException { response.getWriter().write("X"); assertEquals("X", response.getContentAsString()); }
@Test public void testAuthenticate() throws Exception { String username = "marissa3"; String password = "ldap3"; MvcResult result = performAuthentication(username, password); assertThat(result.getResponse().getContentAsString(), containsString("\"username\":\"" + username + "\"")); assertThat(result.getResponse().getContentAsString(), containsString("\"email\":\"marissa3@test.com\"")); }
@Test void refreshTokenGrantType_returnsIdToken_toOpenIdClients() throws Exception { when(timeService.getCurrentTimeMillis()).thenReturn(1000L); client = setUpClients("openidclient", "", "openid", "password,refresh_token", true); user = setUpUser("openiduser", "", OriginKeys.UAA, "uaa"); CompositeToken tokenResponse = getTokensWithPasswordGrant(client.getClientId(), SECRET, user.getUserName(), SECRET, "localhost", "jwt"); String refreshToken = tokenResponse.getRefreshToken().getValue(); String originalIdTokenJwt = tokenResponse.getIdTokenValue(); when(timeService.getCurrentTimeMillis()).thenReturn(5000L); MockHttpServletResponse refreshResponse = useRefreshToken(refreshToken, client.getClientId(), SECRET, "localhost"); assertEquals(HttpStatus.SC_OK, refreshResponse.getStatus()); CompositeToken compositeToken = JsonUtils.readValue(refreshResponse.getContentAsString(), CompositeToken.class); String idTokenJwt = compositeToken.getIdTokenValue(); assertRefreshIdTokenCorrect(originalIdTokenJwt, idTokenJwt); }
@Test public void servletWriterAutoFlushedForCharArray() throws IOException { response.getWriter().write("XY".toCharArray()); assertEquals("XY", response.getContentAsString()); }
@Test public void testWidgetShouldNotBeInjectedIfInjectionDisabled() throws IOException, ServletException { doReturn(false).when(servletPlugin).isClientSpanCollectionEnabled(); doReturn(false).when(servletPlugin).isWidgetAndStagemonitorEndpointsAllowed(any(HttpServletRequest.class)); doReturn(false).when(servletPlugin).isWidgetEnabled(); final MockHttpServletResponse servletResponse = new MockHttpServletResponse(); httpRequestMonitorFilter.doFilter(requestWithAccept("text/html"), servletResponse, writeInResponseWhenCallingDoFilter(testHtml)); assertThat(servletResponse.getContentAsString()).isEqualTo(testHtml); }
@Test void refreshTokenGrantType_returnsIdToken_toOpenIdClients_withOpaqueRefreshToken() throws Exception { when(timeService.getCurrentTimeMillis()).thenReturn(1000L); client = setUpClients("openidclient", "", "openid", "password,refresh_token", true); user = setUpUser("openiduser", "", OriginKeys.UAA, "uaa"); CompositeToken tokenResponse = getTokensWithPasswordGrant(client.getClientId(), SECRET, user.getUserName(), SECRET, "localhost", "opaque"); String refreshToken = tokenResponse.getRefreshToken().getValue(); String originalIdTokenJwt = tokenResponse.getIdTokenValue(); when(timeService.getCurrentTimeMillis()).thenReturn(5000L); MockHttpServletResponse refreshResponse = useRefreshToken(refreshToken, client.getClientId(), SECRET, "localhost"); assertEquals(HttpStatus.SC_OK, refreshResponse.getStatus()); CompositeToken compositeToken = JsonUtils.readValue(refreshResponse.getContentAsString(), CompositeToken.class); String idTokenJwt = compositeToken.getIdTokenValue(); assertRefreshIdTokenCorrect(originalIdTokenJwt, idTokenJwt); }
@Test public void testFlushOnClose() throws IOException { MockHttpServletResponse mockResponse = new MockHttpServletResponse(); PartialBufferedOutputStream2 pbos = new PartialBufferedOutputStream2(mockResponse); PrintStream ps = new PrintStream(pbos); ps.print("Hello world!"); ps.close(); // check the in memory buffer has been flushed to the target output stream // close assertEquals("Hello world!", mockResponse.getContentAsString()); } }
@Test public void user_config_is_returning_error() throws Exception { when(googleAuthenticator.getUserGoogleMfaCredentials(anyString(), anyString())).thenReturn(null); filter.doFilterInternal(request, response, chain); assertThat(response.getStatus(), equalTo(400)); assertThat(response.getHeader(HttpHeaders.CONTENT_TYPE), equalTo(MediaType.APPLICATION_JSON_VALUE)); assertNotNull(response.getContentAsString()); JsonAssert.with(response.getContentAsString()) .assertThat("error", equalTo("invalid_request")) .assertThat("error_description", equalTo("User must register a multi-factor authentication token")); verify(publisher, times(1)).publishEvent(any(MfaAuthenticationFailureEvent.class)); verify(publisher, times(1)).publishEvent(any(ApplicationEvent.class)); }
@Test void refreshTokenGrantType_doesNotReturnIdToken_toNonOpenIdClients() throws Exception { client = setUpClients("nonopenidclient", "", "scim.me", "password,refresh_token", true); user = setUpUser("joe-user", "", OriginKeys.UAA, "uaa"); String refreshToken = getJwtRefreshToken(client.getClientId(), SECRET, user.getUserName(), SECRET, "localhost"); MockHttpServletResponse refreshResponse = useRefreshToken(refreshToken, client.getClientId(), SECRET, "localhost"); assertEquals(HttpStatus.SC_OK, refreshResponse.getStatus()); CompositeToken compositeToken = JsonUtils.readValue(refreshResponse.getContentAsString(), CompositeToken.class); assertNull(compositeToken.getIdTokenValue()); }
@Test public void testEncoding() throws Exception { for (String[] path : paths) { MockHttpServletResponse response = request(path, null); assertEquals(Arrays.toString(path), 200, response.getStatus()); assertEquals(path[path.length - 1], response.getContentAsString()); } }
@Test public void mfa_code_missing_returns_json_error() throws Exception { request.removeParameter(MFA_CODE); filter.doFilterInternal(request, response, chain); assertThat(response.getStatus(), equalTo(400)); JsonAssert.with(response.getContentAsString()) .assertThat("error", equalTo("invalid_request")) .assertThat("error_description", equalTo("A multi-factor authentication code is required to complete the request")); verify(publisher, times(1)).publishEvent(any(MfaAuthenticationFailureEvent.class)); verify(publisher, times(1)).publishEvent(any(ApplicationEvent.class)); }
@Test void testListIdpsInOtherZoneFromDefaultZone() throws Exception { IdentityZone identityZone = MockMvcUtils.createZoneUsingWebRequest(mockMvc, identityToken); ScimUser userInDefaultZone = MockMvcUtils.createAdminForZone(mockMvc, adminToken, "zones." + identityZone.getId() + ".idps.read" + ", zones." + identityZone.getId() + ".idps.write"); String zoneAdminToken = MockMvcUtils.getUserOAuthAccessTokenAuthCode(mockMvc, "identity", "identitysecret", userInDefaultZone.getId(), userInDefaultZone.getUserName(), "secr3T", "zones." + identityZone.getId() + ".idps.read " + "zones." + identityZone.getId() + ".idps.write"); IdentityProvider otherZoneIdp = MockMvcUtils.createIdpUsingWebRequest(mockMvc, identityZone.getId(), zoneAdminToken, MultitenancyFixture.identityProvider(new RandomValueStringGenerator().generate(), IdentityZone.getUaa().getId()), status().isCreated()); MockHttpServletRequestBuilder requestBuilder = get("/identity-providers/") .header("Authorization", "Bearer" + zoneAdminToken) .contentType(APPLICATION_JSON); requestBuilder.header(IdentityZoneSwitchingFilter.HEADER, identityZone.getId()); MvcResult result = mockMvc.perform(requestBuilder).andExpect(status().isOk()).andReturn(); List<IdentityProvider> identityProviderList = JsonUtils.readValue(result.getResponse().getContentAsString(), new TypeReference<List<IdentityProvider>>() { }); assertTrue(identityProviderList.contains(otherZoneIdp)); assertEquals(2, identityProviderList.size()); }
@Test public void testGetStaticResourceDirUp() throws Exception { request.setRequestURI("/stagemonitor/static/../test2.js"); fileServlet.service(request, response); assertEquals(404, response.getStatus()); assertEquals("", response.getContentAsString()); } }
@Test public void invalid_mfa_code_returns_json_bad_credentials() throws Exception { request.setParameter(MFA_CODE, "54321"); filter.doFilterInternal(request, response, chain); assertThat(response.getStatus(), equalTo(401)); JsonAssert.with(response.getContentAsString()) .assertThat("error", equalTo("unauthorized")) .assertThat("error_description", equalTo("Bad credentials")); verify(publisher, times(1)).publishEvent(any(MfaAuthenticationFailureEvent.class)); verify(publisher, times(1)).publishEvent(any(ApplicationEvent.class)); }
@Test void testRetrieveIdpInZone() throws Exception { BaseClientDetails client = getBaseClientDetails(); ScimUser user = MockMvcUtils.createAdminForZone(mockMvc, adminToken, "idps.read,idps.write"); String accessToken = MockMvcUtils.getUserOAuthAccessToken(mockMvc, client.getClientId(), client.getClientSecret(), user.getUserName(), "secr3T", "idps.read,idps.write"); String originKey = RandomStringUtils.randomAlphabetic(6); IdentityProvider newIdp = MultitenancyFixture.identityProvider(originKey, IdentityZone.getUaa().getId()); newIdp = createIdentityProvider(null, newIdp, accessToken, status().isCreated()); MockHttpServletRequestBuilder requestBuilder = get("/identity-providers/" + newIdp.getId()) .header("Authorization", "Bearer" + accessToken) .contentType(APPLICATION_JSON); MvcResult result = mockMvc.perform(requestBuilder).andExpect(status().isOk()).andReturn(); IdentityProvider retrieved = JsonUtils.readValue(result.getResponse().getContentAsString(), IdentityProvider.class); assertEquals(newIdp, retrieved); }
@Test public void testGetIncidentsIncidentRepositoryNull() throws Exception { when(alertingPlugin.getIncidentRepository()).thenReturn(null); MockHttpServletResponse response = new MockHttpServletResponse(); incidentServlet.service(new MockHttpServletRequest("GET", "/stagemonitor/incidents"), response); Assert.assertEquals("{}", response.getContentAsString()); } }
@Test public void testWidgetInjector() throws IOException, ServletException { final MockHttpServletResponse servletResponse = new MockHttpServletResponse(); httpRequestMonitorFilter.doFilter(requestWithAccept("text/html"), servletResponse, writeInResponseWhenCallingDoFilter(testHtml)); final String response = servletResponse.getContentAsString(); assertThat(response).startsWith("<html><head><script"); assertThat(response).endsWith("</body></html>"); assertThat(response).contains("window.StagemonitorLoaded"); assertThat(response).contains("'/stagemonitor/public/eum.js'"); }