From a39a34c787badd029339f06c7ee1d4c88d46598a Mon Sep 17 00:00:00 2001 From: Josh Keegan Date: Thu, 23 May 2024 19:05:47 +0100 Subject: [PATCH] Split xRetry.SpecFlow unit tests Moving them into their own project so that a separate project can be added for Reqnroll. Tests using both of these won't be able to co-exist in the same project. --- build/Makefile | 6 +++ .../Features/IgnoredFeature.feature | 0 .../RetryFeature/IgnoredRetryFeature.feature | 0 .../RetryFeature/RetryFeature.feature | 0 .../RetryFeature/RetryNTimesFeature.feature | 0 .../RetryNTimesWithDelayFeature.feature | 0 .../RetryRuntimeIgnoreScenarios.feature | 0 .../Features/RetryScenarioOutlines.feature | 0 .../Features/RetryScenarios.feature | 0 .../Parsers/RetryTagParserTests.cs | 0 .../Steps/RuntimeIgnoreSteps.cs | 0 .../RetryScenarioOutlineDelaySteps.cs | 0 .../RetryScenarioOutlineSteps.cs | 0 .../Steps/Scenarios/RetryDelaySteps.cs | 0 .../Steps/Scenarios/RetrySteps.cs | 0 .../Steps/SkippedSteps.cs | 0 .../TestClasses/ScenarioId.cs | 0 .../UnitTests.SpecFlow.csproj | 40 +++++++++++++++++++ test/UnitTests.SpecFlow/xunit.runner.json | 4 ++ test/UnitTests/UnitTests.csproj | 8 ---- xRetry.sln | 7 ++++ 21 files changed, 57 insertions(+), 8 deletions(-) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/IgnoredFeature.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryFeature/IgnoredRetryFeature.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryFeature/RetryFeature.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryFeature/RetryNTimesFeature.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryFeature/RetryNTimesWithDelayFeature.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryRuntimeIgnoreScenarios.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryScenarioOutlines.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Features/RetryScenarios.feature (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Parsers/RetryTagParserTests.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Steps/RuntimeIgnoreSteps.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Steps/ScenarioOutlines/RetryScenarioOutlineDelaySteps.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Steps/ScenarioOutlines/RetryScenarioOutlineSteps.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Steps/Scenarios/RetryDelaySteps.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Steps/Scenarios/RetrySteps.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/Steps/SkippedSteps.cs (100%) rename test/{UnitTests/SpecFlow => UnitTests.SpecFlow}/TestClasses/ScenarioId.cs (100%) create mode 100644 test/UnitTests.SpecFlow/UnitTests.SpecFlow.csproj create mode 100644 test/UnitTests.SpecFlow/xunit.runner.json diff --git a/build/Makefile b/build/Makefile index fab8e5a..4a6ba8b 100644 --- a/build/Makefile +++ b/build/Makefile @@ -26,6 +26,9 @@ build: clean cd ../test/UnitTests.SingleThreaded && \ dotnet build -c Release --no-restore -p:Version=$(VERSION) + + cd ../test/UnitTests.SpecFlow && \ + dotnet build -c Release --no-restore -p:Version=$(VERSION) .PHONY: unit-tests-run unit-tests-run: @@ -36,6 +39,9 @@ unit-tests-run: # You can tell if this times out as it returns exit code 124, which make prints as "Error 124" cd ../test/UnitTests.SingleThreaded && \ timeout 10 dotnet test --no-build -c Release --logger:trx\;logfilename=../../../artefacts/testResults/UnitTests.SingleThreaded.trx + + cd ../test/UnitTests.SpecFlow && \ + dotnet test --no-build -c Release --logger:trx\;logfilename=../../../artefacts/testResults/UnitTests.SpecFlow.trx .PHONY: docs docs: diff --git a/test/UnitTests/SpecFlow/Features/IgnoredFeature.feature b/test/UnitTests.SpecFlow/Features/IgnoredFeature.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/IgnoredFeature.feature rename to test/UnitTests.SpecFlow/Features/IgnoredFeature.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryFeature/IgnoredRetryFeature.feature b/test/UnitTests.SpecFlow/Features/RetryFeature/IgnoredRetryFeature.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryFeature/IgnoredRetryFeature.feature rename to test/UnitTests.SpecFlow/Features/RetryFeature/IgnoredRetryFeature.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryFeature/RetryFeature.feature b/test/UnitTests.SpecFlow/Features/RetryFeature/RetryFeature.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryFeature/RetryFeature.feature rename to test/UnitTests.SpecFlow/Features/RetryFeature/RetryFeature.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryFeature/RetryNTimesFeature.feature b/test/UnitTests.SpecFlow/Features/RetryFeature/RetryNTimesFeature.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryFeature/RetryNTimesFeature.feature rename to test/UnitTests.SpecFlow/Features/RetryFeature/RetryNTimesFeature.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryFeature/RetryNTimesWithDelayFeature.feature b/test/UnitTests.SpecFlow/Features/RetryFeature/RetryNTimesWithDelayFeature.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryFeature/RetryNTimesWithDelayFeature.feature rename to test/UnitTests.SpecFlow/Features/RetryFeature/RetryNTimesWithDelayFeature.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryRuntimeIgnoreScenarios.feature b/test/UnitTests.SpecFlow/Features/RetryRuntimeIgnoreScenarios.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryRuntimeIgnoreScenarios.feature rename to test/UnitTests.SpecFlow/Features/RetryRuntimeIgnoreScenarios.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryScenarioOutlines.feature b/test/UnitTests.SpecFlow/Features/RetryScenarioOutlines.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryScenarioOutlines.feature rename to test/UnitTests.SpecFlow/Features/RetryScenarioOutlines.feature diff --git a/test/UnitTests/SpecFlow/Features/RetryScenarios.feature b/test/UnitTests.SpecFlow/Features/RetryScenarios.feature similarity index 100% rename from test/UnitTests/SpecFlow/Features/RetryScenarios.feature rename to test/UnitTests.SpecFlow/Features/RetryScenarios.feature diff --git a/test/UnitTests/SpecFlow/Parsers/RetryTagParserTests.cs b/test/UnitTests.SpecFlow/Parsers/RetryTagParserTests.cs similarity index 100% rename from test/UnitTests/SpecFlow/Parsers/RetryTagParserTests.cs rename to test/UnitTests.SpecFlow/Parsers/RetryTagParserTests.cs diff --git a/test/UnitTests/SpecFlow/Steps/RuntimeIgnoreSteps.cs b/test/UnitTests.SpecFlow/Steps/RuntimeIgnoreSteps.cs similarity index 100% rename from test/UnitTests/SpecFlow/Steps/RuntimeIgnoreSteps.cs rename to test/UnitTests.SpecFlow/Steps/RuntimeIgnoreSteps.cs diff --git a/test/UnitTests/SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineDelaySteps.cs b/test/UnitTests.SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineDelaySteps.cs similarity index 100% rename from test/UnitTests/SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineDelaySteps.cs rename to test/UnitTests.SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineDelaySteps.cs diff --git a/test/UnitTests/SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineSteps.cs b/test/UnitTests.SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineSteps.cs similarity index 100% rename from test/UnitTests/SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineSteps.cs rename to test/UnitTests.SpecFlow/Steps/ScenarioOutlines/RetryScenarioOutlineSteps.cs diff --git a/test/UnitTests/SpecFlow/Steps/Scenarios/RetryDelaySteps.cs b/test/UnitTests.SpecFlow/Steps/Scenarios/RetryDelaySteps.cs similarity index 100% rename from test/UnitTests/SpecFlow/Steps/Scenarios/RetryDelaySteps.cs rename to test/UnitTests.SpecFlow/Steps/Scenarios/RetryDelaySteps.cs diff --git a/test/UnitTests/SpecFlow/Steps/Scenarios/RetrySteps.cs b/test/UnitTests.SpecFlow/Steps/Scenarios/RetrySteps.cs similarity index 100% rename from test/UnitTests/SpecFlow/Steps/Scenarios/RetrySteps.cs rename to test/UnitTests.SpecFlow/Steps/Scenarios/RetrySteps.cs diff --git a/test/UnitTests/SpecFlow/Steps/SkippedSteps.cs b/test/UnitTests.SpecFlow/Steps/SkippedSteps.cs similarity index 100% rename from test/UnitTests/SpecFlow/Steps/SkippedSteps.cs rename to test/UnitTests.SpecFlow/Steps/SkippedSteps.cs diff --git a/test/UnitTests/SpecFlow/TestClasses/ScenarioId.cs b/test/UnitTests.SpecFlow/TestClasses/ScenarioId.cs similarity index 100% rename from test/UnitTests/SpecFlow/TestClasses/ScenarioId.cs rename to test/UnitTests.SpecFlow/TestClasses/ScenarioId.cs diff --git a/test/UnitTests.SpecFlow/UnitTests.SpecFlow.csproj b/test/UnitTests.SpecFlow/UnitTests.SpecFlow.csproj new file mode 100644 index 0000000..b8e4b60 --- /dev/null +++ b/test/UnitTests.SpecFlow/UnitTests.SpecFlow.csproj @@ -0,0 +1,40 @@ + + + + net8.0;net48 + + false + true + + + + + + + + + + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers + + + + + + + + + + + + diff --git a/test/UnitTests.SpecFlow/xunit.runner.json b/test/UnitTests.SpecFlow/xunit.runner.json new file mode 100644 index 0000000..6c0d1e4 --- /dev/null +++ b/test/UnitTests.SpecFlow/xunit.runner.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://xunit.net/schema/current/xunit.runner.schema.json", + "diagnosticMessages": true +} diff --git a/test/UnitTests/UnitTests.csproj b/test/UnitTests/UnitTests.csproj index 17dc1c0..af25687 100644 --- a/test/UnitTests/UnitTests.csproj +++ b/test/UnitTests/UnitTests.csproj @@ -16,17 +16,10 @@ - - - - - - - all @@ -38,7 +31,6 @@ - diff --git a/xRetry.sln b/xRetry.sln index 615328e..849bf69 100644 --- a/xRetry.sln +++ b/xRetry.sln @@ -17,6 +17,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnitTests.SingleThreaded", EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "xRetry.Reqnroll", "src\xRetry.Reqnroll\xRetry.Reqnroll.csproj", "{A032E765-A483-48D4-83EA-F180E7344E7A}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTests.SpecFlow", "test\UnitTests.SpecFlow\UnitTests.SpecFlow.csproj", "{69EF0FF4-EF9D-46E2-A2CD-996525D8BD83}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -43,6 +45,10 @@ Global {A032E765-A483-48D4-83EA-F180E7344E7A}.Debug|Any CPU.Build.0 = Debug|Any CPU {A032E765-A483-48D4-83EA-F180E7344E7A}.Release|Any CPU.ActiveCfg = Release|Any CPU {A032E765-A483-48D4-83EA-F180E7344E7A}.Release|Any CPU.Build.0 = Release|Any CPU + {69EF0FF4-EF9D-46E2-A2CD-996525D8BD83}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {69EF0FF4-EF9D-46E2-A2CD-996525D8BD83}.Debug|Any CPU.Build.0 = Debug|Any CPU + {69EF0FF4-EF9D-46E2-A2CD-996525D8BD83}.Release|Any CPU.ActiveCfg = Release|Any CPU + {69EF0FF4-EF9D-46E2-A2CD-996525D8BD83}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -53,6 +59,7 @@ Global {386D6FB2-876B-4AD0-8282-28ED26F29C4F} = {3A384C09-1858-4BA9-9314-BC18A6234AE9} {2C225DC1-5349-4E08-86E4-1067DFD52378} = {3A384C09-1858-4BA9-9314-BC18A6234AE9} {A032E765-A483-48D4-83EA-F180E7344E7A} = {9E9E02E6-169B-455D-9FA5-2553750E336D} + {69EF0FF4-EF9D-46E2-A2CD-996525D8BD83} = {3A384C09-1858-4BA9-9314-BC18A6234AE9} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {87687087-DCC7-4F67-B0B2-D8A4F8D93693}