Search in sources :

Example 16 with RequestContext

use of org.craftercms.commons.http.RequestContext in project profile by craftercms.

the class RememberMeManagerImplTest method testAutoLogin.

@Test
public void testAutoLogin() throws Exception {
    MockHttpServletRequest request = new MockHttpServletRequest();
    MockHttpServletResponse response = new MockHttpServletResponse();
    RequestContext context = new RequestContext(request, response, null);
    request.setCookies(new Cookie(REMEMBER_ME_COOKIE_NAME, getSerializedLogin()));
    Authentication auth = rememberMeManager.autoLogin(context);
    assertNotNull(auth);
    assertEquals(getProfile(), auth.getProfile());
    String cookieValue = response.getCookie(REMEMBER_ME_COOKIE_NAME).getValue();
    assertEquals(getSerializedLoginWithRefreshedToken(), cookieValue);
}
Also used : Cookie(javax.servlet.http.Cookie) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) Authentication(org.craftercms.security.authentication.Authentication) RequestContext(org.craftercms.commons.http.RequestContext) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Example 17 with RequestContext

use of org.craftercms.commons.http.RequestContext in project profile by craftercms.

the class RememberMeManagerImplTest method testDisableRememberMe.

@Test
public void testDisableRememberMe() throws Exception {
    MockHttpServletRequest request = new MockHttpServletRequest();
    MockHttpServletResponse response = new MockHttpServletResponse();
    RequestContext context = new RequestContext(request, response, null);
    request.setCookies(new Cookie(REMEMBER_ME_COOKIE_NAME, getSerializedLogin()));
    rememberMeManager.disableRememberMe(context);
    assertNull(response.getCookie(REMEMBER_ME_COOKIE_NAME).getValue());
    verify(authenticationService).deletePersistentLogin(LOGIN_ID);
}
Also used : Cookie(javax.servlet.http.Cookie) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) RequestContext(org.craftercms.commons.http.RequestContext) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Example 18 with RequestContext

use of org.craftercms.commons.http.RequestContext in project profile by craftercms.

the class RestLogoutSuccessHandlerTest method testHandle.

@Test
public void testHandle() throws Exception {
    MockHttpServletRequest request = new MockHttpServletRequest("GET", "/logout.json");
    MockHttpServletResponse response = new MockHttpServletResponse();
    RequestContext context = new RequestContext(request, response, null);
    handler.handle(context);
    assertEquals(HttpServletResponse.SC_OK, response.getStatus());
    assertEquals(EXPECTED_RESPONSE_CONTENT, response.getContentAsString());
}
Also used : MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) RequestContext(org.craftercms.commons.http.RequestContext) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Example 19 with RequestContext

use of org.craftercms.commons.http.RequestContext in project profile by craftercms.

the class CurrentAuthenticationResolvingProcessorTest method testGetAuthenticationProfileLastModifiedChanged.

@Test
public void testGetAuthenticationProfileLastModifiedChanged() throws Exception {
    MockHttpServletRequest request = new MockHttpServletRequest();
    MockHttpServletResponse response = new MockHttpServletResponse();
    RequestContext context = new RequestContext(request, response, null);
    RequestSecurityProcessorChain chain = mock(RequestSecurityProcessorChain.class);
    Date profileLastModified = new Date();
    Cookie ticketCookie = new Cookie(SecurityUtils.TICKET_COOKIE_NAME, TICKET);
    Cookie profileLastModifiedCookie = new Cookie(SecurityUtils.PROFILE_LAST_MODIFIED_COOKIE_NAME, String.valueOf(profileLastModified.getTime() + 60000));
    request.setCookies(ticketCookie, profileLastModifiedCookie);
    Profile profile = new Profile();
    profile.setLastModified(profileLastModified);
    Profile modifiedProfile = new Profile();
    modifiedProfile.setLastModified(new Date(profileLastModified.getTime() + 60000));
    Authentication auth = new DefaultAuthentication(TICKET, profile);
    Authentication modifiedAuth = new DefaultAuthentication(TICKET, modifiedProfile);
    when(authenticationManager.getAuthentication(TICKET, false)).thenReturn(auth);
    when(authenticationManager.getAuthentication(TICKET, true)).thenReturn(modifiedAuth);
    processor.processRequest(context, chain);
    verify(chain).processRequest(context);
    Authentication newAuth = SecurityUtils.getAuthentication(request);
    assertNotNull(newAuth);
    assertEquals(modifiedAuth.getTicket(), newAuth.getTicket());
    assertEquals(modifiedAuth.getProfile().getLastModified(), newAuth.getProfile().getLastModified());
}
Also used : Cookie(javax.servlet.http.Cookie) DefaultAuthentication(org.craftercms.security.authentication.impl.DefaultAuthentication) RequestSecurityProcessorChain(org.craftercms.security.processors.RequestSecurityProcessorChain) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) Authentication(org.craftercms.security.authentication.Authentication) DefaultAuthentication(org.craftercms.security.authentication.impl.DefaultAuthentication) RequestContext(org.craftercms.commons.http.RequestContext) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Date(java.util.Date) Profile(org.craftercms.profile.api.Profile) Test(org.junit.Test)

Example 20 with RequestContext

use of org.craftercms.commons.http.RequestContext in project profile by craftercms.

the class UrlAccessRestrictionCheckingProcessorTest method testUnAllowedAccess.

@Test(expected = AccessDeniedException.class)
public void testUnAllowedAccess() throws Exception {
    MockHttpServletRequest request = new MockHttpServletRequest("GET", URL);
    MockHttpServletResponse response = new MockHttpServletResponse();
    RequestContext context = new RequestContext(request, response, null);
    RequestSecurityProcessorChain chain = mock(RequestSecurityProcessorChain.class);
    SecurityUtils.setAuthentication(request, new DefaultAuthentication(new ObjectId().toString(), new Profile()));
    processor.processRequest(context, chain);
}
Also used : DefaultAuthentication(org.craftercms.security.authentication.impl.DefaultAuthentication) RequestSecurityProcessorChain(org.craftercms.security.processors.RequestSecurityProcessorChain) ObjectId(org.bson.types.ObjectId) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) RequestContext(org.craftercms.commons.http.RequestContext) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Profile(org.craftercms.profile.api.Profile) Test(org.junit.Test)

Aggregations

RequestContext (org.craftercms.commons.http.RequestContext)47 MockHttpServletRequest (org.springframework.mock.web.MockHttpServletRequest)40 MockHttpServletResponse (org.springframework.mock.web.MockHttpServletResponse)40 Test (org.junit.Test)37 RequestSecurityProcessorChain (org.craftercms.security.processors.RequestSecurityProcessorChain)17 Authentication (org.craftercms.security.authentication.Authentication)12 DefaultAuthentication (org.craftercms.security.authentication.impl.DefaultAuthentication)11 Cookie (javax.servlet.http.Cookie)9 Profile (org.craftercms.profile.api.Profile)9 ObjectId (org.bson.types.ObjectId)7 AuthenticationRequiredException (org.craftercms.security.exception.AuthenticationRequiredException)5 AccessDeniedException (org.craftercms.security.exception.AccessDeniedException)4 Date (java.util.Date)3 BadCredentialsException (org.craftercms.security.exception.BadCredentialsException)3 RequestSecurityProcessor (org.craftercms.security.processors.RequestSecurityProcessor)3 HashMap (java.util.HashMap)2 HttpSession (javax.servlet.http.HttpSession)2 AuthenticationException (org.craftercms.security.exception.AuthenticationException)2 ExecutionInput (graphql.ExecutionInput)1 ExecutionInput.newExecutionInput (graphql.ExecutionInput.newExecutionInput)1