@@ -11,8 +11,8 @@ public class Combine
|
||||
// When
|
||||
var result = Result.Combine(result1, result2);
|
||||
// Then
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(result2.Error, result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(result2.Error);
|
||||
}
|
||||
[Fact]
|
||||
public void TwoResultCombination_WhenThereAreTwoErrors()
|
||||
@@ -23,8 +23,8 @@ public class Combine
|
||||
// When
|
||||
var result = Result.Combine(result1, result2);
|
||||
// Then
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(result1.Error + result2.Error, result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(result1.Error + result2.Error);
|
||||
}
|
||||
[Fact]
|
||||
public void TwoResultCombination_WhenThereIsNoError()
|
||||
@@ -35,7 +35,7 @@ public class Combine
|
||||
// When
|
||||
var result = Result.Combine(result1, result2);
|
||||
// Then
|
||||
Assert.True(result.IsSuccess);
|
||||
result.IsSuccess.ShouldBeTrue();
|
||||
}
|
||||
[Fact]
|
||||
public void ThreeResultCombination_WhenThereIsAnError()
|
||||
@@ -47,8 +47,8 @@ public class Combine
|
||||
// When
|
||||
Result<(int, double)> result = Result.Combine(result1, result2, result3);
|
||||
// Then
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(result3.Error, result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(result3.Error);
|
||||
}
|
||||
[Fact]
|
||||
public void ThreeResultCombination_WhenThereAreTwoErrors()
|
||||
@@ -60,8 +60,8 @@ public class Combine
|
||||
// When
|
||||
Result<(int?, double)> result = Result.Combine(result1, result2, result3);
|
||||
// Then
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(result1.Error + result3.Error, result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(result1.Error + result3.Error);
|
||||
}
|
||||
[Fact]
|
||||
public void ThreeResultCombination_WhenThereIsNoError()
|
||||
@@ -73,6 +73,6 @@ public class Combine
|
||||
// When
|
||||
var result = Result.Combine(result1, result2, result3);
|
||||
// Then
|
||||
Assert.True(result.IsSuccess);
|
||||
result.IsSuccess.ShouldBeTrue();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,12 +18,12 @@ public class GeneralUsage
|
||||
onSuccess: s => s.ToUpper(),
|
||||
onFailure: _ =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
}
|
||||
);
|
||||
|
||||
Assert.Equal("TEST_1;SOME", result);
|
||||
result.ShouldBe("TEST_1;SOME");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -39,30 +39,30 @@ public class GeneralUsage
|
||||
.Append("test")
|
||||
.Map((i, s) =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
})
|
||||
.Append("some")
|
||||
.Bind((s1, s2) =>
|
||||
.Bind((s1, s2) =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return Result.Success("");
|
||||
})
|
||||
.Match(
|
||||
onSuccess: _ =>
|
||||
onSuccess: _ =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
},
|
||||
onFailure: err =>
|
||||
{
|
||||
Assert.Equal(error, err);
|
||||
err.ShouldBe(error);
|
||||
return "satisfied";
|
||||
}
|
||||
);
|
||||
|
||||
// Then
|
||||
Assert.Equal("satisfied", result);
|
||||
result.ShouldBe("satisfied");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -72,7 +72,7 @@ public class GeneralUsage
|
||||
|
||||
// When
|
||||
var result = await Result.Success()
|
||||
.Append(() => ValueTask.FromResult(Result.Success(1)))
|
||||
.Append(() => Task.FromResult(Result.Success(1)))
|
||||
.Append("test")
|
||||
.Map((i, s) => $"{s}_{i}")
|
||||
.Append("some")
|
||||
@@ -81,12 +81,12 @@ public class GeneralUsage
|
||||
onSuccess: s => s.ToUpper(),
|
||||
onFailure: _ =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
}
|
||||
);
|
||||
|
||||
Assert.Equal("TEST_1;SOME", result);
|
||||
result.ShouldBe("TEST_1;SOME");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -102,31 +102,31 @@ public class GeneralUsage
|
||||
.Append("test")
|
||||
.Map((i, s) =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
})
|
||||
.Append("some")
|
||||
.Bind(async (s1, s2) =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
await Task.CompletedTask;
|
||||
return Result.Success("");
|
||||
})
|
||||
.Match(
|
||||
onSuccess: _ =>
|
||||
onSuccess: _ =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
},
|
||||
onFailure: err =>
|
||||
{
|
||||
Assert.Equal(error, err);
|
||||
err.ShouldBe(error);
|
||||
return "satisfied";
|
||||
}
|
||||
);
|
||||
|
||||
// Then
|
||||
Assert.Equal("satisfied", result);
|
||||
result.ShouldBe("satisfied");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -137,17 +137,17 @@ public class GeneralUsage
|
||||
// When
|
||||
var result = failed.TryRecover(err =>
|
||||
{
|
||||
Assert.IsType<NotImplementedException>(err.ToException());
|
||||
err.ToException().ShouldBeOfType<NotImplementedException>();
|
||||
|
||||
if (err.Type == "System.NotImplementedException")
|
||||
return "recovered";
|
||||
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
});
|
||||
// Then
|
||||
Assert.True(result.IsSuccess);
|
||||
Assert.Equal("recovered", result.Value);
|
||||
result.IsSuccess.ShouldBeTrue();
|
||||
result.Value.ShouldBe("recovered");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -162,12 +162,12 @@ public class GeneralUsage
|
||||
if (err.Type == "System.NotImplementedException")
|
||||
return error;
|
||||
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return "";
|
||||
});
|
||||
// Then
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(error, result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(error);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -179,8 +179,8 @@ public class GeneralUsage
|
||||
var result = success
|
||||
.Extend((i, s) => Result.Success($"{i} + {s}"));
|
||||
|
||||
Assert.True(result.IsSuccess);
|
||||
Assert.Equal((1, "2", "1 + 2"), result.Value);
|
||||
result.IsSuccess.ShouldBeTrue();
|
||||
result.Value.ShouldBe((1, "2", "1 + 2"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -192,12 +192,12 @@ public class GeneralUsage
|
||||
var result = failure
|
||||
.Extend((i, s) =>
|
||||
{
|
||||
Assert.Fail();
|
||||
true.ShouldBeFalse("should not reach this path");
|
||||
return Result.Success("");
|
||||
});
|
||||
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(Error.New("failure"), result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(Error.New("failure"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -209,7 +209,7 @@ public class GeneralUsage
|
||||
var result = success
|
||||
.Extend((i, s) => Result.Failure<string>("failure"));
|
||||
|
||||
Assert.True(result.IsFailure);
|
||||
Assert.Equal(Error.New("failure"), result.Error);
|
||||
result.IsFailure.ShouldBeTrue();
|
||||
result.Error.ShouldBe(Error.New("failure"));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user