Merge pull request #9267 from peterhuene/fix-test-verbosity
Fix incorrect default VSTest verbosity level.
This commit is contained in:
commit
59a27df531
3 changed files with 27 additions and 4 deletions
|
@ -35,6 +35,9 @@ namespace Microsoft.DotNet.Cli
|
||||||
.OfType<ForwardedArgument>()
|
.OfType<ForwardedArgument>()
|
||||||
.SelectMany(o => o.Values);
|
.SelectMany(o => o.Values);
|
||||||
|
|
||||||
|
public static IEnumerable<string> ForwardedOptionValues(this AppliedOption command, string alias) =>
|
||||||
|
(command.ValueOrDefault<ForwardedArgument>(alias)?.Values ?? Array.Empty<string>());
|
||||||
|
|
||||||
private class ForwardedArgument
|
private class ForwardedArgument
|
||||||
{
|
{
|
||||||
public ForwardedArgument(params string[] values)
|
public ForwardedArgument(params string[] values)
|
||||||
|
|
|
@ -60,11 +60,10 @@ namespace Microsoft.DotNet.Tools.Test
|
||||||
msbuildArgs.Add($"-property:VSTestCLIRunSettings=\"{runSettingsArg}\"");
|
msbuildArgs.Add($"-property:VSTestCLIRunSettings=\"{runSettingsArg}\"");
|
||||||
}
|
}
|
||||||
|
|
||||||
var verbosityArg = msbuildArgs.LastOrDefault(arg => arg.StartsWith("-verbosity"));
|
var verbosityArg = parsedTest.ForwardedOptionValues("verbosity").SingleOrDefault();
|
||||||
|
if (verbosityArg != null)
|
||||||
if (!string.IsNullOrEmpty(verbosityArg))
|
|
||||||
{
|
{
|
||||||
var verbosity = verbosityArg.Split(':');
|
var verbosity = verbosityArg.Split(':', 2);
|
||||||
if (verbosity.Length == 2)
|
if (verbosity.Length == 2)
|
||||||
{
|
{
|
||||||
msbuildArgs.Add($"-property:VSTestVerbosity={verbosity[1]}");
|
msbuildArgs.Add($"-property:VSTestVerbosity={verbosity[1]}");
|
||||||
|
|
|
@ -110,6 +110,27 @@ namespace Microsoft.DotNet.Cli.Test.Tests
|
||||||
result.ExitCode.Should().Be(1);
|
result.ExitCode.Should().Be(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void GivenAFailingTestItDisplaysFailureDetails()
|
||||||
|
{
|
||||||
|
var testInstance = TestAssets.Get("XunitCore")
|
||||||
|
.CreateInstance()
|
||||||
|
.WithSourceFiles();
|
||||||
|
|
||||||
|
var result = new DotnetTestCommand()
|
||||||
|
.WithWorkingDirectory(testInstance.Root.FullName)
|
||||||
|
.ExecuteWithCapturedOutput();
|
||||||
|
|
||||||
|
result.ExitCode.Should().Be(1);
|
||||||
|
|
||||||
|
if (!DotnetUnderTest.IsLocalized())
|
||||||
|
{
|
||||||
|
result.StdOut.Should().Contain("Failed TestNamespace.VSTestXunitTests.VSTestXunitFailTest");
|
||||||
|
result.StdOut.Should().Contain("Assert.Equal() Failure");
|
||||||
|
result.StdOut.Should().Contain("Total tests: 2. Passed: 1. Failed: 1. Skipped: 0.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void TestWillNotBuildTheProjectIfNoBuildArgsIsGiven()
|
public void TestWillNotBuildTheProjectIfNoBuildArgsIsGiven()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue