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 ObjectToString_Object_ReturnsCorrectString() { var objectToStringTest = new ObjectToStringTest(); var result = ApprovalsHelper.ApprovalsString(objectToStringTest); var expected = $"Name: {objectToStringTest.Name}\n" + $"Age: {objectToStringTest.Age}\n"; Assert.AreEqual(expected, result); }
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"); } }
public void GivenAListOfAssembliesThatContainsASetOfKnownTests_ThenItReturnsAReportObjectContainingTheExpectedInformation() { var testAssemblyInfos = new[] { CreateTestAssemblyInfo("TestDocumentationTool.Api.Tests.dll"), CreateTestAssemblyInfo("ToolboxForTesting.Tests.dll") }; var sut = CreateSut(); var result = sut.CreateReport(testAssemblyInfos); ApprovalsHelper.Verify( result.ToJsonString().ReplaceDateTime(), nameof(GivenAListOfAssembliesThatContainsASetOfKnownTests_ThenItReturnsAReportObjectContainingTheExpectedInformation)); }
public void ObjectToString_IEnumerableObject_ReturnsCorrectString() { var objectToStringTestList = new List <ObjectToStringTest> { new ObjectToStringTest(), new ObjectToStringTest() }; var result = ApprovalsHelper.ApprovalsString(objectToStringTestList) .Aggregate(string.Empty, (final, next) => final + next); var expected = $"Name: {objectToStringTestList[0].Name}\n" + $"Age: {objectToStringTestList[0].Age}\n" + $"Name: {objectToStringTestList[1].Name}\n" + $"Age: {objectToStringTestList[1].Age}\n"; Assert.AreEqual(expected, result); }
public void ThenIShouldGetAnArrayWithTheTwoValues() { var response = Get <AssertableHttpResponse>(); ApprovalsHelper.Verify(response.BodyAsJsonFormattedString, "ResponseWithTwoValues"); }