public void ToResult_with_custom_error_type_returns_custom_failure_if_no_value() { Maybe <MyClass> maybe = null; var errorInstance = new MyErrorClass(); Result <MyClass, MyErrorClass> result = maybe.ToResult(errorInstance); result.IsSuccess.Should().BeFalse(); result.Error.Should().Be(errorInstance); }
public async Task ToResult_returns_custom_failure_if_has_no_value() { var maybeTask = GetMaybeTask(Maybe <MyClass> .None); var error = new MyErrorClass(); Result <MyClass, MyErrorClass> result = await maybeTask.ToResult(error); result.IsSuccess.Should().BeFalse(); result.Error.Should().Be(error); }
public void Cannot_access_Error_generic_error_version() { Result <MyClass, MyErrorClass> result = Result.Ok <MyClass, MyErrorClass>(new MyClass()); Action action = () => { MyErrorClass error = result.Error; }; action.Should().Throw <ResultSuccessException>(); }