コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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>();
        }