public async Task GivenAnEntityThatHasAllRequiredValues_ThenItReturnsStatusCodeOk() { using (var testHelper = new UnitTestingDemoApiHelper(TestLogger)) { var entity = ObjectBuilder.CreateDemoEntity(); await testHelper.PostAsJsonAsync("api/demo", entity); } }
public async Task GivenThatThereDoesNotExistAnEntityThatMatchesTheProvidedId_ThenTheResponseStatusCodeShouldBeBadRequest() { using (var testHelper = new UnitTestingDemoApiHelper(TestLogger)) { var response = await testHelper.GetAsync("api/demo/f3f9c0b6-622e-4aa0-9bed-1e7fc2be6db3", ensureSuccessStatusCode : false); Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); } }
public void GivenThatThereAreTwoValues_ThenItReturnsAnArrayWithTwoValues() { using (var testHelper = new UnitTestingDemoApiHelper(_outputHelper.WriteLine)) { var response = testHelper.GetAsync("api/values").GetAwaiter().GetResult(); ApprovalsHelper.Verify(response.BodyAsJsonFormattedString, "ResponseWithTwoValues"); } }
public void GivenThatThereExistAnEntityThatMatchesTheProvidedId_ThenTheResponseShouldContainTheExpectedEntity() { using (var testHelper = new UnitTestingDemoApiHelper(TestLogger)) { var entity = ObjectBuilder.CreateDemoEntity(); testHelper.ArrangeData(entity); var response = testHelper.GetAsync("api/demo/f3f9c0b6-622e-4aa0-9bed-1e7fc2be6db3").GetAwaiter().GetResult(); ApprovalsHelper.Verify(response.BodyAsJsonFormattedString, "EntityThatMatchesProvidedId"); } }
public void GivenAnEntityThatIsMissingRequiredValue_ThenItReturnsStatusCodeBadRequestWithErrorMessage() { using (var testHelper = new UnitTestingDemoApiHelper(TestLogger)) { var entity = ObjectBuilder.CreateDemoEntity( importantProperty: null); var response = testHelper.PostAsJsonAsync("api/demo", entity, ensureSuccessStatusCode: false).GetAwaiter().GetResult(); Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); ApprovalsHelper.Verify(response.BodyAsJsonFormattedString, "ErrorWhenRequiredValueIsMissing"); } }