diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/BasicError.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Data/BasicError.cs similarity index 58% rename from tests/RailwayResult.FunctionalExtensions.Tests/BasicError.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Data/BasicError.cs index ee64da9..4ce69d2 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/BasicError.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Data/BasicError.cs @@ -1,3 +1,3 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Data; public sealed record BasicError(string Key, string Message) : Error(Key, Message); diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/BasicException.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Data/BasicException.cs similarity index 75% rename from tests/RailwayResult.FunctionalExtensions.Tests/BasicException.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Data/BasicException.cs index 34672f0..a2c50f4 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/BasicException.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Data/BasicException.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Data; public sealed class BasicException : Exception { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/Callback.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Data/Callback.cs similarity index 89% rename from tests/RailwayResult.FunctionalExtensions.Tests/Callback.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Data/Callback.cs index c6a4fd1..256ad7e 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/Callback.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Data/Callback.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Data; public sealed class Callback { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/Errors.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Data/Errors.cs similarity index 83% rename from tests/RailwayResult.FunctionalExtensions.Tests/Errors.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Data/Errors.cs index 5f6f2f9..1ad496f 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/Errors.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Data/Errors.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Data; public static class Errors { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/Obj.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Data/Obj.cs similarity index 84% rename from tests/RailwayResult.FunctionalExtensions.Tests/Obj.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Data/Obj.cs index 5d9d142..3866d05 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/Obj.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Data/Obj.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Data; public sealed record Obj(string? Value) { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ErrorExtensions.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Extensions/ErrorExtensions.cs similarity index 88% rename from tests/RailwayResult.FunctionalExtensions.Tests/ErrorExtensions.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Extensions/ErrorExtensions.cs index 220fb01..cc7e5e8 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ErrorExtensions.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Extensions/ErrorExtensions.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Extensions; public static class ErrorExtensions { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ResultExtensions.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Extensions/ResultExtensions.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/ResultExtensions.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Extensions/ResultExtensions.cs index a5386de..cb95ba7 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ResultExtensions.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Extensions/ResultExtensions.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests; +namespace RailwayResult.FunctionalExtensions.Tests.Extensions; public static class ResultExtensions { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/GlobalUsings.cs b/tests/RailwayResult.FunctionalExtensions.Tests/GlobalUsings.cs index fd35cf4..4e04600 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/GlobalUsings.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/GlobalUsings.cs @@ -2,10 +2,10 @@ global using Xunit; -global using O = RailwayResult.FunctionalExtensions.Tests.Obj; +global using O = RailwayResult.FunctionalExtensions.Tests.Data.Obj; global using RC = RailwayResult.Result; -global using R1 = RailwayResult.Result; -global using R1N = RailwayResult.Result; -global using R2 = RailwayResult.Result<(RailwayResult.FunctionalExtensions.Tests.Obj, RailwayResult.FunctionalExtensions.Tests.Obj)>; -global using R2N = RailwayResult.Result<(RailwayResult.FunctionalExtensions.Tests.Obj?, RailwayResult.FunctionalExtensions.Tests.Obj?)>; -global using R3 = RailwayResult.Result<(RailwayResult.FunctionalExtensions.Tests.Obj, RailwayResult.FunctionalExtensions.Tests.Obj, RailwayResult.FunctionalExtensions.Tests.Obj)>; +global using R1 = RailwayResult.Result; +global using R1N = RailwayResult.Result; +global using R2 = RailwayResult.Result<(RailwayResult.FunctionalExtensions.Tests.Data.Obj, RailwayResult.FunctionalExtensions.Tests.Data.Obj)>; +global using R2N = RailwayResult.Result<(RailwayResult.FunctionalExtensions.Tests.Data.Obj?, RailwayResult.FunctionalExtensions.Tests.Data.Obj?)>; +global using R3 = RailwayResult.Result<(RailwayResult.FunctionalExtensions.Tests.Data.Obj, RailwayResult.FunctionalExtensions.Tests.Data.Obj, RailwayResult.FunctionalExtensions.Tests.Data.Obj)>; diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TapAsyncTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TapAsyncTests.cs deleted file mode 100644 index e6a7b7d..0000000 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TapAsyncTests.cs +++ /dev/null @@ -1,35 +0,0 @@ -using RailwayResult.FunctionalExtensions.Tests.TapTests; - -namespace RailwayResult.FunctionalExtensions.Tests.TapAsyncTests; - -public sealed class TapAsyncTests -{ - private Callback Callback { get; } = new(); - - [Theory] - [ClassData(typeof(TheoryData_R_TapAsync))] - public async Task R_TapAsync(Func> tapAsync, Result input, Result expectedOutput, bool wasCallbackInvoked) - { - var result = await tapAsync.Invoke(input, Callback); - result.ShouldBe(expectedOutput); - Callback.WasCalled.Should().Be(wasCallbackInvoked); - } - - [Theory] - [ClassData(typeof(TheoryData_R1_TapAsync))] - public async Task R1_TapAsync(Func> tapAsync, R1 input, R1 expectedOutput, bool wasCallbackInvoked) - { - var result = await tapAsync.Invoke(input, Callback); - result.ShouldBe(expectedOutput); - Callback.WasCalled.Should().Be(wasCallbackInvoked); - } - - [Theory] - [ClassData(typeof(TheoryData_R2_TapAsync))] - public async Task R2_TapAsync(Func> tapAsync, R2 input, R2 expectedOutput, bool wasCallbackInvoked) - { - var result = await tapAsync.Invoke(input, Callback); - result.ShouldBe(expectedOutput); - Callback.WasCalled.Should().Be(wasCallbackInvoked); - } -} diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/AndTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/AndTests.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/AndTests/AndTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/AndTests.cs index acf8785..d91a07f 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/AndTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/AndTests.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests.AndTests; +namespace RailwayResult.FunctionalExtensions.Tests.Tests.AndTests; public sealed class AndTests : BaseTests { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R1_And.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R1_And.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R1_And.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R1_And.cs index b397ada..a9e458f 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R1_And.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R1_And.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.AndTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.AndTests; public sealed class TheoryData_R1_And : TheoryData, R1, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R1_AndAsync.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R1_AndAsync.cs similarity index 94% rename from tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R1_AndAsync.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R1_AndAsync.cs index dbc0b1d..7dc4a54 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R1_AndAsync.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R1_AndAsync.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.AndTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.AndTests; public sealed class TheoryData_R1_AndAsync : TheoryData>, R1, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R2_And.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R2_And.cs similarity index 90% rename from tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R2_And.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R2_And.cs index 825d588..035be48 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_R2_And.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_R2_And.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.AndTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.AndTests; public sealed class TheoryData_R2_And : TheoryData, R2, R3?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_TaskOfR1_And.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_TaskOfR1_And.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_TaskOfR1_And.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_TaskOfR1_And.cs index b17016b..939d321 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_TaskOfR1_And.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_TaskOfR1_And.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.AndTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.AndTests; public sealed class TheoryData_TaskOfR1_And : TheoryData, Task>, R1, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_TaskOfR2_And.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_TaskOfR2_And.cs similarity index 90% rename from tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_TaskOfR2_And.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_TaskOfR2_And.cs index 3883964..f64feb1 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/AndTests/TheoryData_TaskOfR2_And.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/AndTests/TheoryData_TaskOfR2_And.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.AndTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.AndTests; public sealed class TheoryData_TaskOfR2_And : TheoryData, Task>, R2, R3?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/BaseTapTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/BaseTapTests.cs similarity index 65% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/BaseTapTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/BaseTapTests.cs index 354094f..c79c43a 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/BaseTapTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/BaseTapTests.cs @@ -1,10 +1,13 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests; public abstract class BaseTapTests { protected Callback Callback { get; } = new(); - protected void Verify(Func method, Result input, Result? expectedOutput, bool wasCallbackCalled) + protected void Verify(Func method, Result input, Result? expectedOutput, bool wasCallbackInvoked) { if (expectedOutput is null) { @@ -15,22 +18,11 @@ protected void Verify(Func method, Result input, Resul { method.Invoke(input, Callback).ShouldBe(expectedOutput); } - } - protected void Verify(Func> method, T1 input, Result? expectedOutput, bool wasCallbackCalled) - { - if (expectedOutput is null) - { - var accessor = () => method.Invoke(input, Callback); - accessor.Should().ThrowExactly(); - } - else - { - method.Invoke(input, Callback).ShouldBe(expectedOutput); - } + Callback.WasCalled.Should().Be(wasCallbackInvoked); } - protected void Verify(Func, Callback, Result> method, Result input, Result? expectedOutput, bool wasCallbackCalled) + protected void Verify(Func, Callback, Result> method, Result input, Result? expectedOutput, bool wasCallbackInvoked) { if (expectedOutput is null) { @@ -41,23 +33,27 @@ protected void Verify(Func, Callback, Result> method, Res { method.Invoke(input, Callback).ShouldBe(expectedOutput); } + + Callback.WasCalled.Should().Be(wasCallbackInvoked); } - protected async Task VerifyAsync(Func, Callback, Task> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackCalled) + protected async Task VerifyAsync(Func> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackInvoked) { if (expectedOutput is null) { - var accessor = async () => await asyncMethod.Invoke(Task.FromResult(input), Callback); + var accessor = async () => await asyncMethod.Invoke(input, Callback); await accessor.Should().ThrowExactlyAsync(); } else { - var result = await asyncMethod.Invoke(Task.FromResult(input), Callback); + var result = await asyncMethod.Invoke(input, Callback); result.ShouldBe(expectedOutput); } + + Callback.WasCalled.Should().Be(wasCallbackInvoked); } - protected async Task VerifyAsync(Func, Callback, Task>> asyncMethod, T1 input, Result? expectedOutput, bool wasCallbackCalled) + protected async Task VerifyAsync(Func, Callback, Task> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackInvoked) { if (expectedOutput is null) { @@ -69,9 +65,11 @@ protected async Task VerifyAsync(Func, Callback, Task(Func>, Callback, Task>> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackCalled) + protected async Task VerifyAsync(Func>, Callback, Task>> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackInvoked) { if (expectedOutput is null) { @@ -83,23 +81,11 @@ protected async Task VerifyAsync(Func>, Callback, Task(Func, Callback, Task> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackCalled) - { - if (expectedOutput is null) - { - var accessor = async () => await asyncMethod.Invoke(input, Callback); - await accessor.Should().ThrowExactlyAsync(); - } - else - { - var result = await asyncMethod.Invoke(input, Callback); - result.ShouldBe(expectedOutput); - } + Callback.WasCalled.Should().Be(wasCallbackInvoked); } - protected async Task VerifyAsync(Func, Callback, Task>> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackCalled) + protected async Task VerifyAsync(Func, Callback, Task>> asyncMethod, Result input, Result? expectedOutput, bool wasCallbackInvoked) { if (expectedOutput is null) { @@ -111,5 +97,7 @@ protected async Task VerifyAsync(Func, Callback, Task, O?, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_R1_EnsureNotNull.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_R1_EnsureNotNull.cs similarity index 90% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_R1_EnsureNotNull.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_R1_EnsureNotNull.cs index 31c786b..2fd7c7d 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_R1_EnsureNotNull.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_R1_EnsureNotNull.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureNotNullTests; public sealed class TheoryData_R1_EnsureNotNull : TheoryData, R1N, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_R2_EnsureNotNull.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_R2_EnsureNotNull.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_R2_EnsureNotNull.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_R2_EnsureNotNull.cs index 411924f..a847596 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_R2_EnsureNotNull.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_R2_EnsureNotNull.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureNotNullTests; public sealed class TheoryData_R2_EnsureNotNull : TheoryData, R2N, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfObj_EnsureNotNull.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfObj_EnsureNotNull.cs similarity index 73% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfObj_EnsureNotNull.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfObj_EnsureNotNull.cs index 0a34581..957c71c 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfObj_EnsureNotNull.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfObj_EnsureNotNull.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureNotNullTests; public sealed class TheoryData_TaskOfObj_EnsureNotNull : TheoryData, Task>, O?, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfR1_EnsureNotNull.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfR1_EnsureNotNull.cs similarity index 90% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfR1_EnsureNotNull.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfR1_EnsureNotNull.cs index b0ee225..b6af80e 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfR1_EnsureNotNull.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfR1_EnsureNotNull.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureNotNullTests; public sealed class TheoryData_TaskOfR1_EnsureNotNull : TheoryData, Task>, R1N, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfR2_EnsureNotNull.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfR2_EnsureNotNull.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfR2_EnsureNotNull.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfR2_EnsureNotNull.cs index b305ecd..48f527d 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureNotNullTests/TheoryData_TaskOfR2_EnsureNotNull.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureNotNullTests/TheoryData_TaskOfR2_EnsureNotNull.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureNotNullTests; public sealed class TheoryData_TaskOfR2_EnsureNotNull : TheoryData, Task>, R2N, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/EnsureTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/EnsureTests.cs similarity index 94% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/EnsureTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/EnsureTests.cs index c64df3e..79f174e 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/EnsureTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/EnsureTests.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class EnsureTests : BaseTests { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/Rules.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/Rules.cs similarity index 89% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/Rules.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/Rules.cs index 328f061..af3ce39 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/Rules.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/Rules.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public static class Rules { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_Obj_Ensure.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_Obj_Ensure.cs similarity index 88% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_Obj_Ensure.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_Obj_Ensure.cs index 99be442..0e39c7e 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_Obj_Ensure.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_Obj_Ensure.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class TheoryData_Obj_Ensure : TheoryData, O, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_R1_Ensure.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_R1_Ensure.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_R1_Ensure.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_R1_Ensure.cs index 32eb18a..fc23990 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_R1_Ensure.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_R1_Ensure.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class TheoryData_R1_Ensure : TheoryData, R1, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_R2_Ensure.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_R2_Ensure.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_R2_Ensure.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_R2_Ensure.cs index 6d8bdc8..c286536 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_R2_Ensure.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_R2_Ensure.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class TheoryData_R2_Ensure : TheoryData, R2, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfObj_Ensure.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfObj_Ensure.cs similarity index 88% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfObj_Ensure.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfObj_Ensure.cs index dc507b7..541ee0f 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfObj_Ensure.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfObj_Ensure.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class TheoryData_TaskOfObj_Ensure : TheoryData, Task>, O, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfR1_Ensure.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfR1_Ensure.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfR1_Ensure.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfR1_Ensure.cs index b25c57e..ae5f13d 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfR1_Ensure.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfR1_Ensure.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class TheoryData_TaskOfR1_Ensure : TheoryData, Task>, R1, R1?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfR2_Ensure.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfR2_Ensure.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfR2_Ensure.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfR2_Ensure.cs index 4058307..3f4301d 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/EnsureTests/TheoryData_TaskOfR2_Ensure.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/EnsureTests/TheoryData_TaskOfR2_Ensure.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.EnsureTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.EnsureTests; public sealed class TheoryData_TaskOfR2_Ensure : TheoryData, Task>, R2, R2?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TapAsyncTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TapAsyncTests.cs new file mode 100644 index 0000000..ed8d29e --- /dev/null +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TapAsyncTests.cs @@ -0,0 +1,18 @@ +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapAsyncTests; + +public sealed class TapAsyncTests : BaseTapTests +{ + [Theory] + [ClassData(typeof(TheoryData_R_TapAsync))] + public async Task R_TapAsync(Func> tapAsync, Result input, Result? expectedOutput, bool wasCallbackInvoked) => await VerifyAsync(tapAsync, input, expectedOutput, wasCallbackInvoked); + + [Theory] + [ClassData(typeof(TheoryData_R1_TapAsync))] + public async Task R1_TapAsync(Func> tapAsync, R1 input, R1? expectedOutput, bool wasCallbackInvoked) => await VerifyAsync(tapAsync, input, expectedOutput, wasCallbackInvoked); + + [Theory] + [ClassData(typeof(TheoryData_R2_TapAsync))] + public async Task R2_TapAsync(Func> tapAsync, R2 input, R2? expectedOutput, bool wasCallbackInvoked) => await VerifyAsync(tapAsync, input, expectedOutput, wasCallbackInvoked); +} diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R1_TapAsync.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R1_TapAsync.cs similarity index 72% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R1_TapAsync.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R1_TapAsync.cs index b93ba48..a72a986 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R1_TapAsync.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R1_TapAsync.cs @@ -1,6 +1,9 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; -public sealed class TheoryData_R1_TapAsync : TheoryData>, R1, R1, bool> +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapAsyncTests; + +public sealed class TheoryData_R1_TapAsync : TheoryData>, R1, R1?, bool> { public TheoryData_R1_TapAsync() { @@ -54,6 +57,22 @@ public TheoryData_R1_TapAsync() false ); + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.TapAsync(_ => BasicException.Throw()), + O.A, + null, + false + ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.TapAsync(_ => BasicException.Throw>()), + O.A, + null, + false + ); + // --- TaskOfR1 ThenAsync --- //callback should be invoked and result stays on success railway @@ -103,5 +122,21 @@ public TheoryData_R1_TapAsync() Errors.ErrorA, false ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.ToResultTask().TapAsync(_ => BasicException.Throw()), + O.A, + null, + false + ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.ToResultTask().TapAsync(_ => BasicException.Throw>()), + O.A, + null, + false + ); } } diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R2_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R2_TapAsync.cs similarity index 72% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R2_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R2_TapAsync.cs index 9f7789a..6efb008 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R2_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R2_TapAsync.cs @@ -1,6 +1,9 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; -public sealed class TheoryData_R2_TapAsync : TheoryData>, R2, R2, bool> +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapAsyncTests; + +public sealed class TheoryData_R2_TapAsync : TheoryData>, R2, R2?, bool> { public TheoryData_R2_TapAsync() { @@ -54,6 +57,22 @@ public TheoryData_R2_TapAsync() false ); + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.TapAsync((_, _) => BasicException.Throw()), + (O.A, O.B), + null, + false + ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.TapAsync((_, _) => BasicException.Throw>()), + (O.A, O.B), + null, + false + ); + // --- TaskOfR2 TapAsync --- //callback should be invoked and result stays on success railway @@ -103,5 +122,21 @@ public TheoryData_R2_TapAsync() Errors.ErrorA, false ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.ToResultTask().TapAsync((_, _) => BasicException.Throw()), + (O.A, O.B), + null, + false + ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.ToResultTask().TapAsync((_, _) => BasicException.Throw>()), + (O.A, O.B), + null, + false + ); } } diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R_TapAsync.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R_TapAsync.cs similarity index 72% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R_TapAsync.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R_TapAsync.cs index e7505a6..4c42107 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapAsyncTests/TheoryData_R_TapAsync.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapAsyncTests/TheoryData_R_TapAsync.cs @@ -1,6 +1,9 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; -public sealed class TheoryData_R_TapAsync : TheoryData>, Result, Result, bool> +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapAsyncTests; + +public sealed class TheoryData_R_TapAsync : TheoryData>, Result, Result?, bool> { public TheoryData_R_TapAsync() { @@ -54,6 +57,22 @@ public TheoryData_R_TapAsync() false ); + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.TapAsync(() => BasicException.Throw()), + Result.Success, + null, + false + ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.TapAsync(() => BasicException.Throw>()), + Result.Success, + null, + false + ); + // --- TaskOfR TapAsync --- //callback should be invoked and result stays on success railway @@ -103,5 +122,21 @@ public TheoryData_R_TapAsync() Errors.ErrorA, false ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.ToResultTask().TapAsync(() => BasicException.Throw()), + Result.Success, + null, + false + ); + + //tap should propagate exception and callback should not be invoked + Add( + (result, _) => result.ToResultTask().TapAsync(() => BasicException.Throw>()), + Result.Success, + null, + false + ); } } diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TapTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TapTests.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TapTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TapTests.cs index 0f47a81..31de60d 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TapTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TapTests.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TapTests : BaseTapTests { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R1_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R1_Tap.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R1_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R1_Tap.cs index 6c5e400..b4d2bf7 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R1_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R1_Tap.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TheoryData_R1_Tap : TheoryData, R1, R1?, bool> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R2_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R2_Tap.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R2_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R2_Tap.cs index 5b4e253..611b00e 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R2_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R2_Tap.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TheoryData_R2_Tap : TheoryData, R2, R2?, bool> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R_Tap.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R_Tap.cs index b02b49d..375a1ff 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_R_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_R_Tap.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TheoryData_R_Tap : TheoryData, Result, Result?, bool> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR1_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR1_Tap.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR1_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR1_Tap.cs index 715eecd..f5101d0 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR1_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR1_Tap.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TheoryData_TaskOfR1_Tap : TheoryData, Callback, Task>, R1, R1?, bool> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR2_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR2_Tap.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR2_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR2_Tap.cs index bd80f46..79dc53d 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR2_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR2_Tap.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TheoryData_TaskOfR2_Tap : TheoryData, Callback, Task>, R2, R2?, bool> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR_Tap.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR_Tap.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR_Tap.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR_Tap.cs index 197b6dd..a2ce5c0 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/TapTests/TheoryData_TaskOfR_Tap.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/TapTests/TheoryData_TaskOfR_Tap.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.TapTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.TapTests; public sealed class TheoryData_TaskOfR_Tap : TheoryData, Callback, Task>, Result, Result?, bool> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/ThenAsyncTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/ThenAsyncTests.cs similarity index 94% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/ThenAsyncTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/ThenAsyncTests.cs index e1e7358..916818f 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/ThenAsyncTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/ThenAsyncTests.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class ThenAsyncTests : BaseTests { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfR.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfR.cs similarity index 91% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfR.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfR.cs index 53fe61c..699dbec 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfR.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfR.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class TheoryData_R1_ThenAsync_TaskOfR : TheoryData>, R1, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfRC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfRC.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfRC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfRC.cs index 8f69c5d..92f4b8e 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfRC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R1_ThenAsync_TaskOfRC.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class TheoryData_R1_ThenAsync_TaskOfRC : TheoryData>, R1, RC?> { @@ -67,7 +70,7 @@ public TheoryData_R1_ThenAsync_TaskOfRC() //then should propagate exception Add( - result => result.ThenAsync(_ => BasicException.Throw< Task>()), + result => result.ThenAsync(_ => BasicException.Throw>()), O.A, null ); diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfR.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfR.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfR.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfR.cs index c960471..b9467ff 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfR.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfR.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class TheoryData_R2_ThenAsync_TaskOfR : TheoryData>, R2, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfRC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfRC.cs similarity index 95% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfRC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfRC.cs index 6f039c3..22fa8bb 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfRC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R2_ThenAsync_TaskOfRC.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class TheoryData_R2_ThenAsync_TaskOfRC : TheoryData>, R2, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfR.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfR.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfR.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfR.cs index 28a2ba4..380d3c0 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfR.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfR.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class TheoryData_R3_ThenAsync_TaskOfR : TheoryData>, R3, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfRC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfRC.cs similarity index 95% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfRC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfRC.cs index 6dc1887..adf0837 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfRC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenAsyncTests/TheoryData_R3_ThenAsync_TaskOfRC.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenAsyncTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenAsyncTests; public sealed class TheoryData_R3_ThenAsync_TaskOfRC : TheoryData>, R3, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/ThenTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/ThenTests.cs similarity index 97% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/ThenTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/ThenTests.cs index 48e92dc..2c908f4 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/ThenTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/ThenTests.cs @@ -1,4 +1,4 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class ThenTests : BaseTests { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R1_Then_R.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R1_Then_R.cs similarity index 87% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R1_Then_R.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R1_Then_R.cs index 8abce19..b1123a1 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R1_Then_R.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R1_Then_R.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_R1_Then_R : TheoryData, R1, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R1_Then_RC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R1_Then_RC.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R1_Then_RC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R1_Then_RC.cs index de546d4..5d902aa 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R1_Then_RC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R1_Then_RC.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_R1_Then_RC : TheoryData, R1, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R2_Then_R.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R2_Then_R.cs similarity index 88% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R2_Then_R.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R2_Then_R.cs index ce30005..3732b19 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R2_Then_R.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R2_Then_R.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_R2_Then_R : TheoryData, R2, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R2_Then_RC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R2_Then_RC.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R2_Then_RC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R2_Then_RC.cs index 0d98982..ab71291 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R2_Then_RC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R2_Then_RC.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_R2_Then_RC : TheoryData, R2, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R3_Then_R.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R3_Then_R.cs similarity index 89% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R3_Then_R.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R3_Then_R.cs index bc86acf..6975ae1 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R3_Then_R.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R3_Then_R.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_R3_Then_R : TheoryData, R3, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R3_Then_RC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R3_Then_RC.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R3_Then_RC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R3_Then_RC.cs index 81d640a..f7e4504 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_R3_Then_RC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_R3_Then_RC.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_R3_Then_RC : TheoryData, R3, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfR.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfR.cs similarity index 88% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfR.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfR.cs index 60d8ad3..27e9aa6 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfR.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfR.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_TaskOfR1_Then_TaskOfR : TheoryData, Task>, R1, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfRC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfRC.cs similarity index 92% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfRC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfRC.cs index 12a2338..2bf6693 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfRC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR1_Then_TaskOfRC.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_TaskOfR1_Then_TaskOfRC : TheoryData, Task>, R1, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfR.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfR.cs similarity index 88% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfR.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfR.cs index 56869aa..5808ce1 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfR.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfR.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_TaskOfR2_Then_TaskOfR : TheoryData, Task>, R2, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfRC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfRC.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfRC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfRC.cs index 1f13082..5726b07 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfRC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR2_Then_TaskOfRC.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_TaskOfR2_Then_TaskOfRC : TheoryData, Task>, R2, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfR.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfR.cs similarity index 89% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfR.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfR.cs index 331be92..3b67ba4 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfR.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfR.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_TaskOfR3_Then_TaskOfR : TheoryData, Task>, R3, Result?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfRC.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfRC.cs similarity index 93% rename from tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfRC.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfRC.cs index dfada5d..d41c14b 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfRC.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ThenTests/TheoryData_TaskOfR3_Then_TaskOfRC.cs @@ -1,4 +1,6 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ThenTests; +using RailwayResult.FunctionalExtensions.Tests.Data; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ThenTests; public sealed class TheoryData_TaskOfR3_Then_TaskOfRC : TheoryData, Task>, R3, RC?> { diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ToResultTests/ResultComparerExtensions.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ToResultTests/ResultComparerExtensions.cs similarity index 80% rename from tests/RailwayResult.FunctionalExtensions.Tests/ToResultTests/ResultComparerExtensions.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ToResultTests/ResultComparerExtensions.cs index dc6e153..17eb0c8 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ToResultTests/ResultComparerExtensions.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ToResultTests/ResultComparerExtensions.cs @@ -1,13 +1,11 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ToResultTests; +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ToResultTests; public static class ResultComparerExtensions { public static void ShouldBeSameAs(this Result resultA, Result resultB) { if (resultA.IsSuccess) - { resultB.IsSuccess.Should().BeTrue(); - } else { resultB.IsSuccess.Should().BeFalse(); diff --git a/tests/RailwayResult.FunctionalExtensions.Tests/ToResultTests/ToResultTests.cs b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ToResultTests/ToResultTests.cs similarity index 85% rename from tests/RailwayResult.FunctionalExtensions.Tests/ToResultTests/ToResultTests.cs rename to tests/RailwayResult.FunctionalExtensions.Tests/Tests/ToResultTests/ToResultTests.cs index a78a213..21b6979 100644 --- a/tests/RailwayResult.FunctionalExtensions.Tests/ToResultTests/ToResultTests.cs +++ b/tests/RailwayResult.FunctionalExtensions.Tests/Tests/ToResultTests/ToResultTests.cs @@ -1,4 +1,7 @@ -namespace RailwayResult.FunctionalExtensions.Tests.ToResultTests; +using RailwayResult.FunctionalExtensions.Tests.Data; +using RailwayResult.FunctionalExtensions.Tests.Extensions; + +namespace RailwayResult.FunctionalExtensions.Tests.Tests.ToResultTests; public sealed class ToResultTests {