From a8bd14a60c9ef4d9982ad8a6c379287b12e325d3 Mon Sep 17 00:00:00 2001 From: Livar Date: Thu, 9 May 2019 12:31:07 -0700 Subject: [PATCH] TestPlatform insertion --- build/DependencyVersions.props | 2 +- ...ildsAndRunsTestFromCsprojForMultipleTFM.cs | 24 ++++--- ...enDotnetTestBuildsAndRunsTestfromCsproj.cs | 64 ++++++++++++------- test/dotnet-vstest.Tests/VSTestTests.cs | 8 ++- 4 files changed, 63 insertions(+), 35 deletions(-) diff --git a/build/DependencyVersions.props b/build/DependencyVersions.props index a20f9b3896..2d1e971c88 100644 --- a/build/DependencyVersions.props +++ b/build/DependencyVersions.props @@ -53,7 +53,7 @@ $(NuGetBuildTasksPackageVersion) $(NuGetBuildTasksPackageVersion) $(NuGetBuildTasksPackageVersion) - 16.0.1 + 16.1.0 $(MicrosoftNETTestSdkPackageVersion) $(MicrosoftNETTestSdkPackageVersion) 0.2.0-beta-000042 diff --git a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestFromCsprojForMultipleTFM.cs b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestFromCsprojForMultipleTFM.cs index c64cdfc4e3..ca8a0074e8 100644 --- a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestFromCsprojForMultipleTFM.cs +++ b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestFromCsprojForMultipleTFM.cs @@ -38,10 +38,14 @@ public void MStestMultiTFM() if (!DotnetUnderTest.IsLocalized()) { result.StdOut - .Should().Contain("Total tests: 3. Passed: 2. Failed: 1. Skipped: 0.", "because .NET 4.6 tests will pass") - .And.Contain("Passed VSTestPassTestDesktop", "because .NET 4.6 tests will pass") - .And.Contain("Total tests: 3. Passed: 1. Failed: 2. Skipped: 0.", "because netcoreapp2.0 tests will fail") - .And.Contain("Failed VSTestFailTestNetCoreApp", "because netcoreapp2.0 tests will fail"); + .Should().Contain("Total tests: 3") + .And.Contain("Passed: 2") + .And.Contain("Failed: 1") + .And.Contain("\u221a VSTestPassTestDesktop", "because .NET 4.6 tests will pass") + .And.Contain("Total tests: 3") + .And.Contain("Passed: 1") + .And.Contain("Failed: 2") + .And.Contain("X VSTestFailTestNetCoreApp", "because netcoreapp2.0 tests will fail"); } result.ExitCode.Should().Be(1); } @@ -73,12 +77,16 @@ public void XunitMultiTFM() if (!DotnetUnderTest.IsLocalized()) { // for target framework net46 - result.StdOut.Should().Contain("Total tests: 3. Passed: 2. Failed: 1. Skipped: 0."); - result.StdOut.Should().Contain("Passed TestNamespace.VSTestXunitTests.VSTestXunitPassTestDesktop"); + result.StdOut.Should().Contain("Total tests: 3"); + result.StdOut.Should().Contain("Passed: 2"); + result.StdOut.Should().Contain("Failed: 1"); + result.StdOut.Should().Contain("\u221a TestNamespace.VSTestXunitTests.VSTestXunitPassTestDesktop"); // for target framework netcoreapp1.0 - result.StdOut.Should().Contain("Total tests: 3. Passed: 1. Failed: 2. Skipped: 0."); - result.StdOut.Should().Contain("Failed TestNamespace.VSTestXunitTests.VSTestXunitFailTestNetCoreApp"); + result.StdOut.Should().Contain("Total tests: 3"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 2"); + result.StdOut.Should().Contain("X TestNamespace.VSTestXunitTests.VSTestXunitFailTestNetCoreApp"); } result.ExitCode.Should().Be(1); diff --git a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs index 65f4b37165..3e19d02397 100644 --- a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs +++ b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs @@ -29,9 +29,11 @@ public void MSTestSingleTFM() // Verify if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); - result.StdOut.Should().Contain("Passed VSTestPassTest"); - result.StdOut.Should().Contain("Failed VSTestFailTest"); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); + result.StdOut.Should().Contain("\u221a VSTestPassTest"); + result.StdOut.Should().Contain("X VSTestFailTest"); } result.ExitCode.Should().Be(1); @@ -53,9 +55,13 @@ public void ItImplicitlyRestoresAProjectWhenTesting() if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); - result.StdOut.Should().Contain("Passed VSTestPassTest"); - result.StdOut.Should().Contain("Failed VSTestFailTest"); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); + result.StdOut.Should().Contain("\u221a VSTestPassTest"); + result.StdOut.Should().Contain("X VSTestFailTest"); } result.ExitCode.Should().Be(1); @@ -120,9 +126,11 @@ public void XunitSingleTFM() // Verify if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); - result.StdOut.Should().Contain("Passed TestNamespace.VSTestXunitTests.VSTestXunitPassTest"); - result.StdOut.Should().Contain("Failed TestNamespace.VSTestXunitTests.VSTestXunitFailTest"); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); + result.StdOut.Should().Contain("\u221a TestNamespace.VSTestXunitTests.VSTestXunitPassTest"); + result.StdOut.Should().Contain("X TestNamespace.VSTestXunitTests.VSTestXunitFailTest"); } result.ExitCode.Should().Be(1); @@ -143,9 +151,11 @@ public void GivenAFailingTestItDisplaysFailureDetails() if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Failed TestNamespace.VSTestXunitTests.VSTestXunitFailTest"); + result.StdOut.Should().Contain("X TestNamespace.VSTestXunitTests.VSTestXunitFailTest"); result.StdOut.Should().Contain("Assert.Equal() Failure"); - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); } } @@ -174,8 +184,8 @@ public void ItAcceptsMultipleLoggersAsCliArguments() // We append current date time to trx file name, hence modifying this check Assert.True(Directory.EnumerateFiles(trxLoggerDirectory, trxFileNamePattern).Any()); - result.StdOut.Should().Contain("Passed VSTestPassTest"); - result.StdOut.Should().Contain("Failed VSTestFailTest"); + result.StdOut.Should().Contain("\u221a VSTestPassTest"); + result.StdOut.Should().Contain("X VSTestFailTest"); } // Cleanup trxLoggerDirectory if it exist @@ -301,9 +311,11 @@ public void ItBuildsAndTestsAppWhenRestoringToSpecificDirectory() if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); - result.StdOut.Should().Contain("Passed VSTestPassTest"); - result.StdOut.Should().Contain("Failed VSTestFailTest"); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); + result.StdOut.Should().Contain("\u221a VSTestPassTest"); + result.StdOut.Should().Contain("X VSTestFailTest"); } result.ExitCode.Should().Be(1); @@ -323,15 +335,16 @@ public void ItUsesVerbosityPassedToDefineVerbosityOfConsoleLoggerOfTheTests() // Verify if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); - result.StdOut.Should().NotContain("Passed TestNamespace.VSTestTests.VSTestPassTest"); - result.StdOut.Should().NotContain("Failed TestNamespace.VSTestTests.VSTestFailTest"); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); + result.StdOut.Should().NotContain("\u221a TestNamespace.VSTestTests.VSTestPassTest"); + result.StdOut.Should().NotContain("X TestNamespace.VSTestTests.VSTestFailTest"); } result.ExitCode.Should().Be(1); } - [WindowsOnlyFact] public void ItCreatesCoverageFileWhenCodeCoverageEnabledByRunsettings() { @@ -357,7 +370,9 @@ public void ItCreatesCoverageFileWhenCodeCoverageEnabledByRunsettings() // Verify test results if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); } // Verify coverage file. @@ -391,7 +406,9 @@ public void ItCreatesCoverageFileInResultsDirectory() // Verify test results if (!DotnetUnderTest.IsLocalized()) { - result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0."); + result.StdOut.Should().Contain("Total tests: 2"); + result.StdOut.Should().Contain("Passed: 1"); + result.StdOut.Should().Contain("Failed: 1"); } // Verify coverage file. @@ -418,7 +435,8 @@ public void ItShouldShowWarningMessageOnCollectCodeCoverage() if (!DotnetUnderTest.IsLocalized()) { result.StdOut.Should().Contain("No code coverage data available. Code coverage is currently supported only on Windows."); - result.StdOut.Should().Contain("Total tests: 1. Passed: 1. Failed: 0. Skipped: 0."); + result.StdOut.Should().Contain("Total tests: 1"); + result.StdOut.Should().Contain("Passed: 1"); result.StdOut.Should().Contain("Test Run Successful."); } diff --git a/test/dotnet-vstest.Tests/VSTestTests.cs b/test/dotnet-vstest.Tests/VSTestTests.cs index c6a7dd0358..d3388f45a5 100644 --- a/test/dotnet-vstest.Tests/VSTestTests.cs +++ b/test/dotnet-vstest.Tests/VSTestTests.cs @@ -41,9 +41,11 @@ public void TestsFromAGivenContainerShouldRunWithExpectedOutput() if (!DotnetUnderTest.IsLocalized()) { result.StdOut - .Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0.") - .And.Contain("Passed VSTestPassTest") - .And.Contain("Failed VSTestFailTest"); + .Should().Contain("Total tests: 2") + .And.Contain("Passed: 1") + .And.Contain("Failed: 1") + .And.Contain("\u221a VSTestPassTest") + .And.Contain("X VSTestFailTest"); } result.ExitCode.Should().Be(1);