public async Task SetsStatusCode(HttpActionExecutedContext context, JSendExceptionFilterAttribute filter) { // Exercise system await filter.OnExceptionAsync(context, CancellationToken.None); // Verify outcome context.Response.StatusCode.Should().Be(HttpStatusCode.InternalServerError); }
public async Task SetsContentTypeHeader(HttpActionExecutedContext context, JSendExceptionFilterAttribute filter) { // Exercise system await filter.OnExceptionAsync(context, CancellationToken.None); // Verify outcome context.Response.Content.Headers.ContentType.MediaType.Should().Be("application/json"); }
public async Task CreatesResponse(HttpActionExecutedContext context, JSendExceptionFilterAttribute filter) { // Fixture setup context.Response = null; // Exercise system await filter.OnExceptionAsync(context, CancellationToken.None); // Verify outcome context.Response.Should().NotBeNull(); }
public async Task CreatesErrorResponseWithoutDetails(HttpRequestContext requestContext, HttpActionExecutedContext context, JSendExceptionFilterAttribute filter) { // Fixture setup requestContext.IncludeErrorDetail = false; context.Request.SetRequestContext(requestContext); var expectedMessage = JsonConvert.SerializeObject(new ErrorResponse(StringResources.DefaultErrorMessage)); // Exercise system await filter.OnExceptionAsync(context, CancellationToken.None); // Verify outcome var message = await context.Response.Content.ReadAsStringAsync(); message.Should().Be(expectedMessage); }