public void CreateProblemDetails_DefaultValues() { // Act var problemDetails = Factory.CreateProblemDetails(GetHttpContext()); // Assert Assert.Equal(500, problemDetails.Status); Assert.Equal("An error occured while processing your request.", problemDetails.Title); Assert.Equal("https://tools.ietf.org/html/rfc7231#section-6.6.1", problemDetails.Type); Assert.Null(problemDetails.Instance); Assert.Null(problemDetails.Detail); Assert.Collection( problemDetails.Extensions, kvp => { Assert.Equal("traceId", kvp.Key); Assert.Equal("some-trace", kvp.Value); }); }
public IActionResult GetClientError(ActionContext actionContext, IClientErrorActionResult clientError) { var problemDetails = _problemDetailsFactory.CreateProblemDetails(actionContext.HttpContext, clientError.StatusCode); return(new ObjectResult(problemDetails) { StatusCode = problemDetails.Status, ContentTypes = { "application/problem+json", "application/problem+xml", }, }); }