diff --git a/build.cake b/build.cake index 15f0217d..74bb34b8 100644 --- a/build.cake +++ b/build.cake @@ -13,7 +13,7 @@ var configuration = Argument("configuration", "Release"); ////////////////////////////////////////////////////////////////////// var version = "4.2.0"; -var modifier = "-alpha.201"; +var modifier = "-alpha.919.3"; var dbgSuffix = configuration.ToLower() == "debug" ? "-dbg" : ""; var packageVersion = version + modifier + dbgSuffix; diff --git a/src/NUnitTestAdapter/NUnit3TestExecutor.cs b/src/NUnitTestAdapter/NUnit3TestExecutor.cs index 0a7dcb93..58e32fe3 100644 --- a/src/NUnitTestAdapter/NUnit3TestExecutor.cs +++ b/src/NUnitTestAdapter/NUnit3TestExecutor.cs @@ -119,10 +119,7 @@ public void RunTests(IEnumerable sources, IRunContext runContext, IFrame var vsTestFilter = VsTestFilterFactory.CreateVsTestFilter(Settings, runContext); filter = builder.ConvertVsTestFilterToNUnitFilter(vsTestFilter); } - if (filter == null) - { - filter = builder.FilterByWhere(Settings.Where); - } + filter ??= builder.FilterByWhere(Settings.Where); foreach (string assemblyName in sources) { diff --git a/src/NUnitTestAdapter/NUnitEngine/DiscoveryConverter.cs b/src/NUnitTestAdapter/NUnitEngine/DiscoveryConverter.cs index 9473a515..2573418d 100644 --- a/src/NUnitTestAdapter/NUnitEngine/DiscoveryConverter.cs +++ b/src/NUnitTestAdapter/NUnitEngine/DiscoveryConverter.cs @@ -170,7 +170,7 @@ public IList Convert(NUnitResults discoveryResults, string assemblyPat return loadedTestCases; IEnumerable RunnableTestCases(bool isExplicit) => - isExplicit || !Settings.DesignMode + isExplicit ? TestRun.TestAssembly.AllTestCases : TestRun.TestAssembly.RunnableTestCases; } diff --git a/src/NUnitTestAdapter/NUnitTestFilterBuilder.cs b/src/NUnitTestAdapter/NUnitTestFilterBuilder.cs index 92a1eacf..f5245470 100644 --- a/src/NUnitTestAdapter/NUnitTestFilterBuilder.cs +++ b/src/NUnitTestAdapter/NUnitTestFilterBuilder.cs @@ -65,6 +65,9 @@ public TestFilter ConvertVsTestFilterToNUnitFilter(IVsTestFilter vsFilter, IDisc return result; } + /// + /// Used when running from command line, mode Non-Ide, e.g. 'dotnet test --filter xxxxx'. Reads the TfsTestCaseFilterExpression. + /// public TestFilter ConvertVsTestFilterToNUnitFilter(IVsTestFilter vsFilter) { if (string.IsNullOrEmpty(vsFilter?.TfsTestCaseFilterExpression?.TestCaseFilterValue)) @@ -87,6 +90,9 @@ public TestFilter ConvertTfsFilterToNUnitFilter(IVsTestFilter vsFilter, IDiscove return testCases.Any() ? FilterByList(testCases) : NoTestsFound; } + /// + /// Used when a Where statement is added as a runsettings parameter, either in a runsettings file or on the command line from dotnet using the '-- NUnit.Where .....' statement. + /// public TestFilter FilterByWhere(string where) { if (string.IsNullOrEmpty(where)) diff --git a/src/NUnitTestAdapterTests/TestExecutionTests.cs b/src/NUnitTestAdapterTests/TestExecutionTests.cs index e768fa0d..083f799c 100644 --- a/src/NUnitTestAdapterTests/TestExecutionTests.cs +++ b/src/NUnitTestAdapterTests/TestExecutionTests.cs @@ -82,11 +82,11 @@ public void LoadMockassembly() [TestCase("method =~ MockTest?", 5)] [TestCase("method =~ MockTest? and cat != MockCategory", 3)] [TestCase("namespace == ThisNamespaceDoesNotExist", 0)] - [TestCase("test==NUnit.Tests.Assemblies.MockTestFixture", MockTestFixture.Tests, TestName = "{m}_MockTestFixture")] + [TestCase("test==NUnit.Tests.Assemblies.MockTestFixture", MockTestFixture.Tests - MockTestFixture.Explicit, TestName = "{m}_MockTestFixture")] [TestCase("test==NUnit.Tests.IgnoredFixture and method == Test2", 1, TestName = "{m}_IgnoredFixture")] - [TestCase("class==NUnit.Tests.Assemblies.MockTestFixture", MockTestFixture.Tests)] - [TestCase("name==MockTestFixture", MockTestFixture.Tests + NUnit.Tests.TestAssembly.MockTestFixture.Tests)] - [TestCase("cat==FixtureCategory", MockTestFixture.Tests)] + [TestCase("class==NUnit.Tests.Assemblies.MockTestFixture", MockTestFixture.Tests - MockTestFixture.Explicit)] + [TestCase("name==MockTestFixture", MockTestFixture.Tests + NUnit.Tests.TestAssembly.MockTestFixture.Tests - MockTestFixture.Explicit)] + [TestCase("cat==FixtureCategory", MockTestFixture.Tests - MockTestFixture.Explicit)] public void TestsWhereShouldFilter(string filter, int expectedCount) { // Create a fake environment. @@ -158,7 +158,7 @@ public void CorrectNumberOfTestCasesWereStarted() Console.WriteLine(ev.TestCase.DisplayName); Assert.That( testLog.Events.FindAll(e => e.EventType == eventType).Count, - Is.EqualTo(MockAssembly.ResultCount - BadFixture.Tests - IgnoredFixture.Tests - ExplicitFixture.Tests)); + Is.EqualTo(MockAssembly.ResultCount - BadFixture.Tests - IgnoredFixture.Tests - ExplicitFixture.Tests - MockTestFixture.Explicit)); } [Test] diff --git a/src/NUnitTestAdapterTests/TestFilterConverterTests/TestFilterParserTests.cs b/src/NUnitTestAdapterTests/TestFilterConverterTests/TestFilterParserTests.cs index 2d51a7cf..b00d16dd 100644 --- a/src/NUnitTestAdapterTests/TestFilterConverterTests/TestFilterParserTests.cs +++ b/src/NUnitTestAdapterTests/TestFilterConverterTests/TestFilterParserTests.cs @@ -173,7 +173,7 @@ public void TestParser(string input, string output) { Assert.That(_parser.Parse(input), Is.EqualTo($"{output}")); - XmlDocument doc = new XmlDocument(); + XmlDocument doc = new (); Assert.DoesNotThrow(() => doc.LoadXml(output)); }