public void RetryUpdatesCurrentRepeatCountPropertyOnEachAttempt() { RepeatingTestsFixtureBase fixture = (RepeatingTestsFixtureBase)Reflect.Construct(typeof(RetryTestVerifyAttempt)); ITestResult result = TestBuilder.RunTestCase(fixture, "PassesOnLastRetry"); Assert.AreEqual(fixture.TearDownResults.Count, fixture.Count + 1, "expected the CurrentRepeatCount property to be one less than the number of executions"); Assert.AreEqual(result.FailCount, 0, "expected that the test passed final retry"); }
public void CollectingWritesWorksWithRetry() { RepeatingTestsFixtureBase fixture = (RepeatingTestsFixtureBase)Reflect.Construct(typeof(RetryTestCaseWithPrintFixture)); ITestResult result = TestBuilder.RunTestFixture(fixture); var testOutput = result.Children.First().Output.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); Assert.AreEqual(3, testOutput.Count()); }
public void RepeatUpdatesCurrentRepeatCountPropertyOnGreenTest() { RepeatingTestsFixtureBase fixture = (RepeatingTestsFixtureBase)Reflect.Construct(typeof(RepeatedTestVerifyAttempt)); ITestResult result = TestBuilder.RunTestCase(fixture, nameof(RepeatedTestVerifyAttempt.AlwaysPasses)); Assert.AreEqual(fixture.TearDownResults.Count, fixture.Count + 1, "expected the CurrentRepeatCount property to be one less than the number of executions"); Assert.AreEqual(result.FailCount, 0, "expected that the test passes all repetitions without a failure"); }
public void RetryExposesEachResultInTearDown(Type fixtureType, params string[] results) { RepeatingTestsFixtureBase fixture = (RepeatingTestsFixtureBase)Reflect.Construct(fixtureType); ITestResult result = TestBuilder.RunTestFixture(fixture); Assert.AreEqual(results.Length, fixture.TearDownResults.Count); for (int i = 0; i < results.Length; i++) { Assert.That(fixture.TearDownResults[i], Is.EqualTo(results[i]), $"Teardown {i} received incorrect result"); } }
public void RetryWorksAsExpectedOnFixturesWithSetupAndTeardown(Type fixtureType, string outcome, int nTries) { RepeatingTestsFixtureBase fixture = (RepeatingTestsFixtureBase)Reflect.Construct(fixtureType); ITestResult result = TestBuilder.RunTestFixture(fixture); Assert.That(result.ResultState.ToString(), Is.EqualTo(outcome)); Assert.AreEqual(1, fixture.FixtureSetupCount); Assert.AreEqual(1, fixture.FixtureTeardownCount); Assert.AreEqual(nTries, fixture.SetupCount); Assert.AreEqual(nTries, fixture.TeardownCount); Assert.AreEqual(nTries, fixture.Count); }
public void RepeatWorksAsExpected(Type fixtureType, string outcome, int nTries) { RepeatingTestsFixtureBase fixture = (RepeatingTestsFixtureBase)Activator.CreateInstance(fixtureType); ITestResult result = TestBuilder.RunTestFixture(fixture); Assert.That(result.ResultState.ToString(), Is.EqualTo(outcome)); Assert.AreEqual(1, fixture.FixtureSetupCount); Assert.AreEqual(1, fixture.FixtureTeardownCount); Assert.AreEqual(nTries, fixture.SetupCount); Assert.AreEqual(nTries, fixture.TeardownCount); Assert.AreEqual(nTries, fixture.Count); }