public override ExpectationResult Verify(TBase value, IValueFormattingService formattingService) { if (value == null || value is TDerived) { return(_expectation.Verify((TDerived)value, formattingService)); } return(ExpectationResult.Failure($"value of type '{value.GetType().Name}' cannot be cast to '{typeof(TDerived).Name}'")); }
public void Should_create_success() { // Act var result = ExpectationResult.CreateSuccessResult(); // Assert Assert.That(result.ExpectationsMet, Is.True); Assert.That(result.Message, Is.Empty); Assert.That(result.ToString(), Is.EqualTo("Success")); }
private ExpectationResult VerifyExpectation(VerifiableTableColumn column, ColumnValue expected, ColumnValue actual) { if (expected.HasValue && !actual.HasValue) { return(ExpectationResult.Failure("missing value")); } if (!expected.HasValue && actual.HasValue) { return(ExpectationResult.Failure("unexpected value")); } return(column.Expectation.Invoke(expected.Value).Verify(actual.Value, FormattingService)); }
/// <summary> /// Sets the actual value and performs the validation against the expectation, updating <see cref="Status"/> property. /// The value specified by <paramref name="value"/> parameter can be retrieved by <see cref="GetActual"/> method. /// /// If actual value is already set, an exception is thrown. /// </summary> /// <param name="value">Value to set.</param> /// <returns>Self.</returns> /// <exception cref="InvalidOperationException">Thrown when actual value is already set.</exception> public Verifiable <T> SetActual(T value) { if (Status != ParameterVerificationStatus.NotProvided) { throw new InvalidOperationException("Actual value has been already specified"); } _exception = null; _actual = value; _actualText = _formattingService.FormatValue(value); _result = Expectation.Verify(value, _formattingService); return(this); }
public void Should_create_failure() { // Arrange const string expectedMessage = "Failure"; // Act var result = ExpectationResult.CreateFailureResult(expectedMessage); // Assert Assert.That(result.ExpectationsMet, Is.False); Assert.That(result.Message, Is.EqualTo(expectedMessage)); Assert.That(result.ToString(), Is.EqualTo("Failure")); }
public void Should_not_have_any_errors() { // Arrange var results = new List <ExpectationResult> { ExpectationResult.CreateSuccessResult(), ExpectationResult.CreateSuccessResult(), ExpectationResult.CreateSuccessResult() }; // Act var errorMessages = results.ErrorMessages(); // Assert Assert.That(results.Valid(), Is.True); Assert.That(errorMessages, Is.EqualTo("")); }
public void Should_have_errors() { // Arrange var results = new List <ExpectationResult> { ExpectationResult.CreateSuccessResult(), ExpectationResult.CreateFailureResult("Expected this but was that for X"), ExpectationResult.CreateFailureResult("Expected that but was this for Y"), ExpectationResult.CreateSuccessResult(), ExpectationResult.CreateFailureResult("Expected this but was that for Z") }; // Act var errorMessages = results.ErrorMessages(); // Assert Assert.That(results.Valid(), Is.False); Assert.That(errorMessages, Is.EqualTo("Expected this but was that for X\r\nExpected that but was this for Y\r\nExpected this but was that for Z")); }
public ExpectationResult Handle(string message) { return(ExpectationResult.CreateFailureResult(message)); }