Search in sources :

Example 1 with ErrorProperties

use of org.springframework.boot.autoconfigure.web.ErrorProperties in project spring-boot by spring-projects.

the class DefaultErrorWebExceptionHandlerTests method nonStandardErrorStatusCodeShouldNotFail.

@Test
void nonStandardErrorStatusCodeShouldNotFail() {
    ErrorAttributes errorAttributes = mock(ErrorAttributes.class);
    given(errorAttributes.getErrorAttributes(any(), any())).willReturn(getErrorAttributes());
    Resources resourceProperties = new Resources();
    ErrorProperties errorProperties = new ErrorProperties();
    ApplicationContext context = new AnnotationConfigReactiveWebApplicationContext();
    DefaultErrorWebExceptionHandler exceptionHandler = new DefaultErrorWebExceptionHandler(errorAttributes, resourceProperties, errorProperties, context);
    setupViewResolver(exceptionHandler);
    ServerWebExchange exchange = MockServerWebExchange.from(MockServerHttpRequest.get("/some-other-path").accept(MediaType.TEXT_HTML));
    exceptionHandler.handle(exchange, new RuntimeException()).block();
}
Also used : ErrorAttributes(org.springframework.boot.web.reactive.error.ErrorAttributes) ServerWebExchange(org.springframework.web.server.ServerWebExchange) MockServerWebExchange(org.springframework.mock.web.server.MockServerWebExchange) AnnotationConfigReactiveWebApplicationContext(org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebApplicationContext) ApplicationContext(org.springframework.context.ApplicationContext) ErrorProperties(org.springframework.boot.autoconfigure.web.ErrorProperties) Resources(org.springframework.boot.autoconfigure.web.WebProperties.Resources) AnnotationConfigReactiveWebApplicationContext(org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebApplicationContext) Test(org.junit.jupiter.api.Test)

Example 2 with ErrorProperties

use of org.springframework.boot.autoconfigure.web.ErrorProperties in project spring-boot by spring-projects.

the class DefaultErrorWebExceptionHandlerTests method acceptsTextHtmlShouldNotConsiderMediaAllEvenWithQuality.

@Test
void acceptsTextHtmlShouldNotConsiderMediaAllEvenWithQuality() {
    ErrorAttributes errorAttributes = mock(ErrorAttributes.class);
    Resources resourceProperties = new Resources();
    ErrorProperties errorProperties = new ErrorProperties();
    ApplicationContext context = new AnnotationConfigReactiveWebApplicationContext();
    DefaultErrorWebExceptionHandler exceptionHandler = new DefaultErrorWebExceptionHandler(errorAttributes, resourceProperties, errorProperties, context);
    MediaType allWithQuality = new MediaType(MediaType.ALL.getType(), MediaType.ALL.getSubtype(), 0.9);
    MockServerWebExchange exchange = MockServerWebExchange.from(MockServerHttpRequest.get("/test").accept(allWithQuality));
    List<HttpMessageReader<?>> readers = ServerCodecConfigurer.create().getReaders();
    ServerRequest request = ServerRequest.create(exchange, readers);
    assertThat(exceptionHandler.acceptsTextHtml().test(request)).isFalse();
}
Also used : ErrorAttributes(org.springframework.boot.web.reactive.error.ErrorAttributes) HttpMessageReader(org.springframework.http.codec.HttpMessageReader) AnnotationConfigReactiveWebApplicationContext(org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebApplicationContext) ApplicationContext(org.springframework.context.ApplicationContext) ErrorProperties(org.springframework.boot.autoconfigure.web.ErrorProperties) MediaType(org.springframework.http.MediaType) MockServerWebExchange(org.springframework.mock.web.server.MockServerWebExchange) Resources(org.springframework.boot.autoconfigure.web.WebProperties.Resources) ServerRequest(org.springframework.web.reactive.function.server.ServerRequest) AnnotationConfigReactiveWebApplicationContext(org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebApplicationContext) Test(org.junit.jupiter.api.Test)

Aggregations

Test (org.junit.jupiter.api.Test)2 ErrorProperties (org.springframework.boot.autoconfigure.web.ErrorProperties)2 Resources (org.springframework.boot.autoconfigure.web.WebProperties.Resources)2 AnnotationConfigReactiveWebApplicationContext (org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebApplicationContext)2 ErrorAttributes (org.springframework.boot.web.reactive.error.ErrorAttributes)2 ApplicationContext (org.springframework.context.ApplicationContext)2 MockServerWebExchange (org.springframework.mock.web.server.MockServerWebExchange)2 MediaType (org.springframework.http.MediaType)1 HttpMessageReader (org.springframework.http.codec.HttpMessageReader)1 ServerRequest (org.springframework.web.reactive.function.server.ServerRequest)1 ServerWebExchange (org.springframework.web.server.ServerWebExchange)1