refactor(api.tests): check for correct status code first in assertion

This commit is contained in:
Stevan Freeborn
2026-02-12 16:18:42 -06:00
parent 09930a07fe
commit 4164e53113
@@ -78,12 +78,6 @@ internal sealed class HttpResponseMessageAssertions(
private async Task<T> ValidateAndDeserialize<T>(HttpStatusCode expectedStatusCode) where T : ProblemDetails private async Task<T> ValidateAndDeserialize<T>(HttpStatusCode expectedStatusCode) where T : ProblemDetails
{ {
_chain.ForCondition(Subject.Content.Headers.ContentType?.MediaType is "application/problem+json")
.FailWith(
"Expected response to be application/problem+json, but found {0}",
Subject.Content.Headers.ContentType?.MediaType
);
_chain.ForCondition(Subject.StatusCode == expectedStatusCode) _chain.ForCondition(Subject.StatusCode == expectedStatusCode)
.FailWith( .FailWith(
"Expected response status code to be {0}, but found {1}", "Expected response status code to be {0}, but found {1}",
@@ -91,6 +85,12 @@ internal sealed class HttpResponseMessageAssertions(
Subject.StatusCode Subject.StatusCode
); );
_chain.ForCondition(Subject.Content.Headers.ContentType?.MediaType is "application/problem+json")
.FailWith(
"Expected response to be application/problem+json, but found {0}",
Subject.Content.Headers.ContentType?.MediaType
);
var problem = await Subject.Content.ReadFromJsonAsync<T>(); var problem = await Subject.Content.ReadFromJsonAsync<T>();
_chain.ForCondition(problem is not null) _chain.ForCondition(problem is not null)