Search in sources :

Example 1 with RegisteredServiceCorsConfigurationSource

use of org.apereo.cas.services.web.support.RegisteredServiceCorsConfigurationSource in project cas by apereo.

the class RegisteredServiceCorsConfigurationSourceTests method verifyService.

@Test
public void verifyService() {
    val props = new LinkedHashMap<String, RegisteredServiceProperty>();
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_ALLOW_CREDENTIALS.getPropertyName(), new DefaultRegisteredServiceProperty("false"));
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_MAX_AGE.getPropertyName(), new DefaultRegisteredServiceProperty("1000"));
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_ALLOWED_HEADERS.getPropertyName(), new DefaultRegisteredServiceProperty(Set.of("12345")));
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_ALLOWED_ORIGINS.getPropertyName(), new DefaultRegisteredServiceProperty(Set.of("12345")));
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_ALLOWED_ORIGIN_PATTERNS.getPropertyName(), new DefaultRegisteredServiceProperty(Set.of("12345")));
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_ALLOWED_METHODS.getPropertyName(), new DefaultRegisteredServiceProperty(Set.of("12345")));
    props.put(RegisteredServiceProperty.RegisteredServiceProperties.CORS_EXPOSED_HEADERS.getPropertyName(), new DefaultRegisteredServiceProperty(Set.of("12345")));
    val registeredService = CoreAuthenticationTestUtils.getRegisteredService();
    when(registeredService.getProperties()).thenReturn(props);
    val servicesManager = mock(ServicesManager.class);
    when(servicesManager.findServiceBy(any(Service.class))).thenReturn(registeredService);
    val argumentExtractor = mock(ArgumentExtractor.class);
    when(argumentExtractor.extractService(any())).thenReturn(RegisteredServiceTestUtils.getService());
    val source = new RegisteredServiceCorsConfigurationSource(casProperties, servicesManager, argumentExtractor);
    val request = new MockHttpServletRequest();
    request.addParameter(CasProtocolConstants.PARAMETER_SERVICE, "example");
    val config = source.getCorsConfiguration(request);
    assertFalse(config.getAllowCredentials().booleanValue());
    assertEquals(1000, config.getMaxAge().intValue());
    assertEquals(List.of("12345"), config.getAllowedHeaders());
    assertEquals(List.of("12345"), config.getAllowedOrigins());
    assertEquals(List.of("12345"), config.getAllowedMethods());
    assertEquals(List.of("12345"), config.getExposedHeaders());
    assertEquals(List.of("12345"), config.getAllowedOriginPatterns());
}
Also used : lombok.val(lombok.val) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) RegisteredServiceCorsConfigurationSource(org.apereo.cas.services.web.support.RegisteredServiceCorsConfigurationSource) Service(org.apereo.cas.authentication.principal.Service) LinkedHashMap(java.util.LinkedHashMap) DefaultRegisteredServiceProperty(org.apereo.cas.services.DefaultRegisteredServiceProperty) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Example 2 with RegisteredServiceCorsConfigurationSource

use of org.apereo.cas.services.web.support.RegisteredServiceCorsConfigurationSource in project cas by apereo.

the class RegisteredServiceCorsConfigurationSourceTests method verifyDefault.

@Test
public void verifyDefault() {
    val servicesManager = mock(ServicesManager.class);
    val argumentExtractor = mock(ArgumentExtractor.class);
    val source = new RegisteredServiceCorsConfigurationSource(casProperties, servicesManager, argumentExtractor);
    val request = new MockHttpServletRequest();
    request.addParameter(CasProtocolConstants.PARAMETER_SERVICE, "example");
    val config = source.getCorsConfiguration(request);
    val cors = casProperties.getHttpWebRequest().getCors();
    assertEquals(cors.getMaxAge(), config.getMaxAge().intValue());
    assertEquals(cors.getAllowHeaders(), config.getAllowedHeaders());
    assertEquals(cors.getAllowOrigins(), config.getAllowedOrigins());
    assertEquals(cors.getAllowOriginPatterns(), config.getAllowedOriginPatterns());
    assertEquals(cors.getAllowMethods(), config.getAllowedMethods());
    assertEquals(cors.getExposedHeaders(), config.getExposedHeaders());
    assertTrue(config.getAllowCredentials().booleanValue());
}
Also used : lombok.val(lombok.val) MockHttpServletRequest(org.springframework.mock.web.MockHttpServletRequest) RegisteredServiceCorsConfigurationSource(org.apereo.cas.services.web.support.RegisteredServiceCorsConfigurationSource) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Aggregations

lombok.val (lombok.val)2 RegisteredServiceCorsConfigurationSource (org.apereo.cas.services.web.support.RegisteredServiceCorsConfigurationSource)2 Test (org.junit.jupiter.api.Test)2 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)2 MockHttpServletRequest (org.springframework.mock.web.MockHttpServletRequest)2 LinkedHashMap (java.util.LinkedHashMap)1 Service (org.apereo.cas.authentication.principal.Service)1 DefaultRegisteredServiceProperty (org.apereo.cas.services.DefaultRegisteredServiceProperty)1