public void It_should_initialize_instance_with_NotProvided_status() { Verifiable <int> expectation = Fake.Int(); Assert.That(expectation.Status, Is.EqualTo(ParameterVerificationStatus.NotProvided)); var ex = Assert.Throws <InvalidOperationException>(() => expectation.GetActual()); Assert.That(ex.Message, Is.EqualTo("Actual value is not set")); }
public void SetActual_should_set_actual_value() { var actualValue = Fake.Int(); Verifiable <int> expectation = Fake.Int(); expectation.SetActual(actualValue); Assert.That(expectation.Status, Is.Not.EqualTo(ParameterVerificationStatus.NotProvided)); Assert.That(expectation.GetActual(), Is.EqualTo(actualValue)); }
public async Task SetActualAsync_should_capture_exception_during_actual_value_evaluation_and_expose_it_with_GetActual() { var expected = Fake.Int(); Verifiable <int> expectation = expected; await expectation.SetActualAsync(() => throw new DivideByZeroException()); Assert.That(expectation.Status, Is.EqualTo(ParameterVerificationStatus.Exception)); Assert.That(expectation.ToString(), Is.EqualTo($"expected: equals '{expected}', but got: '<{nameof(DivideByZeroException)}>'")); Assert.Throws <DivideByZeroException>(() => expectation.GetActual()); }