Addressing more code review comments.
This commit is contained in:
parent
9f2a0169fc
commit
7d60d66a86
15 changed files with 61 additions and 58 deletions
|
@ -152,7 +152,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "publish", "publish", "{27B1
|
|||
build\publish\PublishContent.targets = build\publish\PublishContent.targets
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "dotnet-test-console", "src\dotnet-test-console\dotnet-test-console.xproj", "{6D028154-5518-4A56-BAD6-938A90E5BCF6}"
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.DotNet.Tools.Test", "src\Microsoft.DotNet.Tools.Test\Microsoft.DotNet.Tools.Test.xproj", "{6D028154-5518-4A56-BAD6-938A90E5BCF6}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
@ -840,20 +840,20 @@ Global
|
|||
{E4F46EAB-B5A5-4E60-9B9D-40A1FADBF45C}.RelWithDebInfo|x64.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|Any CPU.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|x64.ActiveCfg = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|x64.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Debug|x64.Build.0 = Debug|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|Any CPU.ActiveCfg = MinSizeRel|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|Any CPU.Build.0 = MinSizeRel|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.MinSizeRel|x64.Build.0 = MinSizeRel|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Release|x64.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|Any CPU.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|x64.ActiveCfg = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|x64.Build.0 = Release|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Release|x64.ActiveCfg = Release|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.Release|x64.Build.0 = Release|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|Any CPU.ActiveCfg = RelWithDebInfo|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|Any CPU.Build.0 = RelWithDebInfo|Any CPU
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
|
||||
{6D028154-5518-4A56-BAD6-938A90E5BCF6}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
|
@ -7,11 +7,11 @@ using Microsoft.DotNet.Cli.Utils;
|
|||
|
||||
namespace Microsoft.DotNet.Tools.Test
|
||||
{
|
||||
public class AssemblyTestRunner : IDotnetTestRunner
|
||||
public class AssemblyTestRunnerDecorator : IDotnetTestRunner
|
||||
{
|
||||
private readonly Func<ICommandFactory, string, IDotnetTestRunner> _nextRunner;
|
||||
|
||||
public AssemblyTestRunner(Func<ICommandFactory, string, IDotnetTestRunner> nextRunner)
|
||||
public AssemblyTestRunnerDecorator(Func<ICommandFactory, string, IDotnetTestRunner> nextRunner)
|
||||
{
|
||||
_nextRunner = nextRunner;
|
||||
}
|
|
@ -9,7 +9,7 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
{
|
||||
public class ConsoleTestRunner : IDotnetTestRunner
|
||||
{
|
||||
private readonly ITestRunnerResolver _testRunnerResolver;
|
||||
private readonly ITestRunnerNameResolver _testRunnerNameResolver;
|
||||
|
||||
private readonly ICommandFactory _commandFactory;
|
||||
|
||||
|
@ -18,12 +18,12 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
private readonly NuGetFramework _framework;
|
||||
|
||||
public ConsoleTestRunner(
|
||||
ITestRunnerResolver testRunnerResolver,
|
||||
ITestRunnerNameResolver testRunnerNameResolver,
|
||||
ICommandFactory commandFactory,
|
||||
string assemblyUnderTest,
|
||||
NuGetFramework framework = null)
|
||||
{
|
||||
_testRunnerResolver = testRunnerResolver;
|
||||
_testRunnerNameResolver = testRunnerNameResolver;
|
||||
_commandFactory = commandFactory;
|
||||
_assemblyUnderTest = assemblyUnderTest;
|
||||
_framework = framework;
|
||||
|
@ -32,7 +32,7 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
public int RunTests(DotnetTestParams dotnetTestParams)
|
||||
{
|
||||
return _commandFactory.Create(
|
||||
_testRunnerResolver.ResolveTestRunner(),
|
||||
_testRunnerNameResolver.ResolveTestRunner(),
|
||||
GetCommandArgs(dotnetTestParams),
|
||||
_framework,
|
||||
dotnetTestParams.Config)
|
||||
|
|
|
@ -8,18 +8,18 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
{
|
||||
public class DesignTimeRunner : IDotnetTestRunner
|
||||
{
|
||||
private readonly ITestRunnerResolver _testRunnerResolver;
|
||||
private readonly ITestRunnerNameResolver _testRunnerNameResolver;
|
||||
|
||||
private readonly ICommandFactory _commandFactory;
|
||||
|
||||
private readonly string _assemblyUnderTest;
|
||||
|
||||
public DesignTimeRunner(
|
||||
ITestRunnerResolver testRunnerResolver,
|
||||
ITestRunnerNameResolver testRunnerNameResolver,
|
||||
ICommandFactory commandFactory,
|
||||
string assemblyUnderTest)
|
||||
{
|
||||
_testRunnerResolver = testRunnerResolver;
|
||||
_testRunnerNameResolver = testRunnerNameResolver;
|
||||
_commandFactory = commandFactory;
|
||||
_assemblyUnderTest = assemblyUnderTest;
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
using (var dotnetTest = new DotnetTest(messages, pathToAssemblyUnderTest))
|
||||
{
|
||||
var testRunnerFactory =
|
||||
new TestRunnerFactory(_testRunnerResolver.ResolveTestRunner(), _commandFactory);
|
||||
new TestRunnerFactory(_testRunnerNameResolver.ResolveTestRunner(), _commandFactory);
|
||||
|
||||
dotnetTest
|
||||
.AddNonSpecificMessageHandlers(messages, adapterChannel)
|
||||
|
|
|
@ -44,13 +44,13 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
Func<ICommandFactory, string, IDotnetTestRunner> nextAssemblyTestRunner =
|
||||
(commandFactory, assemblyUnderTest) => nextTestRunner(commandFactory, assemblyUnderTest, null);
|
||||
|
||||
return new AssemblyTestRunner(nextAssemblyTestRunner);
|
||||
return new AssemblyTestRunnerDecorator(nextAssemblyTestRunner);
|
||||
}
|
||||
|
||||
private static IDotnetTestRunner CreateTestRunnerForProjectJson(
|
||||
Func<ICommandFactory, string, NuGetFramework, IDotnetTestRunner> nextTestRunner)
|
||||
{
|
||||
return new ProjectJsonTestRunner(nextTestRunner);
|
||||
return new ProjectJsonTestRunnerDecorator(nextTestRunner);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,12 +11,12 @@ using NuGet.Frameworks;
|
|||
|
||||
namespace Microsoft.DotNet.Tools.Test
|
||||
{
|
||||
public class ProjectJsonTestRunner : IDotnetTestRunner
|
||||
public class ProjectJsonTestRunnerDecorator : IDotnetTestRunner
|
||||
{
|
||||
private readonly Func<ICommandFactory, string, NuGetFramework, IDotnetTestRunner> _nextRunner;
|
||||
private readonly TestProjectBuilder _testProjectBuilder;
|
||||
|
||||
public ProjectJsonTestRunner(
|
||||
public ProjectJsonTestRunnerDecorator(
|
||||
Func<ICommandFactory, string, NuGetFramework, IDotnetTestRunner> nextRunner)
|
||||
{
|
||||
_nextRunner = nextRunner;
|
|
@ -7,18 +7,18 @@ using Microsoft.Extensions.EnvironmentAbstractions;
|
|||
|
||||
namespace Microsoft.DotNet.Tools.Test
|
||||
{
|
||||
public class AssemblyTestRunnerResolver : ITestRunnerResolver
|
||||
public class AssemblyTestRunnerNameResolver : ITestRunnerNameResolver
|
||||
{
|
||||
private readonly string _directoryOfAssemblyUnderTest;
|
||||
|
||||
private readonly IDirectory _directory;
|
||||
|
||||
public AssemblyTestRunnerResolver(string assemblyUnderTest) :
|
||||
public AssemblyTestRunnerNameResolver(string assemblyUnderTest) :
|
||||
this(assemblyUnderTest, FileSystemWrapper.Default.Directory)
|
||||
{
|
||||
}
|
||||
|
||||
internal AssemblyTestRunnerResolver(string assemblyUnderTest, IDirectory directory)
|
||||
internal AssemblyTestRunnerNameResolver(string assemblyUnderTest, IDirectory directory)
|
||||
{
|
||||
_directoryOfAssemblyUnderTest = directory.GetDirectoryFullName(assemblyUnderTest);
|
||||
_directory = directory;
|
|
@ -15,7 +15,7 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
_projectReader = projectReader;
|
||||
}
|
||||
|
||||
public ITestRunnerResolver Create(DotnetTestParams dotnetTestParams)
|
||||
public ITestRunnerNameResolver Create(DotnetTestParams dotnetTestParams)
|
||||
{
|
||||
var testRunnerResolver = dotnetTestParams.IsTestingAssembly ?
|
||||
GetAssemblyTestRunnerResolver(dotnetTestParams) :
|
||||
|
@ -24,25 +24,25 @@ namespace Microsoft.DotNet.Tools.Test
|
|||
return testRunnerResolver;
|
||||
}
|
||||
|
||||
private ITestRunnerResolver GetAssemblyTestRunnerResolver(DotnetTestParams dotnetTestParams)
|
||||
private ITestRunnerNameResolver GetAssemblyTestRunnerResolver(DotnetTestParams dotnetTestParams)
|
||||
{
|
||||
ITestRunnerResolver testRunnerResolver = null;
|
||||
ITestRunnerNameResolver testRunnerNameResolver = null;
|
||||
if (dotnetTestParams.HasTestRunner)
|
||||
{
|
||||
testRunnerResolver = new ParameterTestRunnerResolver(dotnetTestParams.TestRunner);
|
||||
testRunnerNameResolver = new ParameterTestRunnerNameResolver(dotnetTestParams.TestRunner);
|
||||
}
|
||||
else
|
||||
{
|
||||
testRunnerResolver = new AssemblyTestRunnerResolver(dotnetTestParams.ProjectOrAssemblyPath);
|
||||
testRunnerNameResolver = new AssemblyTestRunnerNameResolver(dotnetTestParams.ProjectOrAssemblyPath);
|
||||
}
|
||||
|
||||
return testRunnerResolver;
|
||||
return testRunnerNameResolver;
|
||||
}
|
||||
|
||||
private ITestRunnerResolver GetProjectJsonTestRunnerResolver(DotnetTestParams dotnetTestParams)
|
||||
private ITestRunnerNameResolver GetProjectJsonTestRunnerResolver(DotnetTestParams dotnetTestParams)
|
||||
{
|
||||
var project = _projectReader.ReadProject(dotnetTestParams.ProjectOrAssemblyPath);
|
||||
return new ProjectJsonTestRunnerResolver(project);
|
||||
return new ProjectJsonTestRunnerNameResolver(project);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
namespace Microsoft.DotNet.Tools.Test
|
||||
{
|
||||
public interface ITestRunnerResolver
|
||||
public interface ITestRunnerNameResolver
|
||||
{
|
||||
string ResolveTestRunner();
|
||||
}
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
namespace Microsoft.DotNet.Tools.Test
|
||||
{
|
||||
public class ParameterTestRunnerResolver : ITestRunnerResolver
|
||||
public class ParameterTestRunnerNameResolver : ITestRunnerNameResolver
|
||||
{
|
||||
private readonly string _testRunner;
|
||||
|
||||
public ParameterTestRunnerResolver(string testRunner)
|
||||
public ParameterTestRunnerNameResolver(string testRunner)
|
||||
{
|
||||
_testRunner = testRunner;
|
||||
}
|
|
@ -5,11 +5,11 @@ using Microsoft.DotNet.ProjectModel;
|
|||
|
||||
namespace Microsoft.DotNet.Tools.Test
|
||||
{
|
||||
public class ProjectJsonTestRunnerResolver : ITestRunnerResolver
|
||||
public class ProjectJsonTestRunnerNameResolver : ITestRunnerNameResolver
|
||||
{
|
||||
private Project _project;
|
||||
|
||||
public ProjectJsonTestRunnerResolver(Project project)
|
||||
public ProjectJsonTestRunnerNameResolver(Project project)
|
||||
{
|
||||
_project = project;
|
||||
}
|
|
@ -7,14 +7,14 @@ using Xunit;
|
|||
|
||||
namespace Microsoft.Dotnet.Tools.Test.Tests
|
||||
{
|
||||
public class GivenAParameterTestRunnerResolver
|
||||
public class GivenAParameterTestRunnerNameResolver
|
||||
{
|
||||
private const string SomeTestRunner = "Some test runner";
|
||||
|
||||
[Fact]
|
||||
public void It_returns_the_runner_based_on_the_parameter()
|
||||
{
|
||||
var parameterTestRunnerResolver = new ParameterTestRunnerResolver(SomeTestRunner);
|
||||
var parameterTestRunnerResolver = new ParameterTestRunnerNameResolver(SomeTestRunner);
|
||||
|
||||
var testRunner = parameterTestRunnerResolver.ResolveTestRunner();
|
||||
|
|
@ -9,7 +9,7 @@ using Xunit;
|
|||
|
||||
namespace Microsoft.Dotnet.Tools.Test.Tests
|
||||
{
|
||||
public class GivenAProjectJsonTestRunnerResolver
|
||||
public class GivenAProjectJsonTestRunnerNameResolver
|
||||
{
|
||||
private const string SomeTestRunner = "runner";
|
||||
|
||||
|
@ -21,7 +21,7 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
TestRunner = SomeTestRunner
|
||||
};
|
||||
|
||||
var projectJsonTestRunnerResolver = new ProjectJsonTestRunnerResolver(project);
|
||||
var projectJsonTestRunnerResolver = new ProjectJsonTestRunnerNameResolver(project);
|
||||
|
||||
var testRunner = projectJsonTestRunnerResolver.ResolveTestRunner();
|
||||
|
||||
|
@ -33,11 +33,11 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
{
|
||||
var project = new Project();
|
||||
|
||||
var projectJsonTestRunnerResolver = new ProjectJsonTestRunnerResolver(project);
|
||||
var projectJsonTestRunnerResolver = new ProjectJsonTestRunnerNameResolver(project);
|
||||
|
||||
var testRunner = projectJsonTestRunnerResolver.ResolveTestRunner();
|
||||
|
||||
testRunner.Should().BeNull();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -10,7 +10,7 @@ using Xunit;
|
|||
|
||||
namespace Microsoft.Dotnet.Tools.Test.Tests
|
||||
{
|
||||
public class GivenATestRunnerResolverFactoryAndADotnetTestParams
|
||||
public class GivenATestRunnerNameResolverFactoryAndADotnetTestParams
|
||||
{
|
||||
private const string PathToAFolder = "c:/some/path";
|
||||
private const string PathToAnAssembly = "c:/some/path/to/assembly.dll";
|
||||
|
@ -35,7 +35,7 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
|
||||
var testRunnerResolver = dotnetTestRunnerResolverFactory.Create(dotnetTestParams);
|
||||
|
||||
testRunnerResolver.Should().BeOfType<ProjectJsonTestRunnerResolver>();
|
||||
testRunnerResolver.Should().BeOfType<ProjectJsonTestRunnerNameResolver>();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
@ -55,7 +55,7 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
|
||||
var testRunnerResolver = dotnetTestRunnerResolverFactory.Create(dotnetTestParams);
|
||||
|
||||
testRunnerResolver.Should().BeOfType<ProjectJsonTestRunnerResolver>();
|
||||
testRunnerResolver.Should().BeOfType<ProjectJsonTestRunnerNameResolver>();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
@ -73,7 +73,7 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
|
||||
var testRunnerResolver = dotnetTestRunnerResolverFactory.Create(dotnetTestParams);
|
||||
|
||||
testRunnerResolver.Should().BeOfType<ParameterTestRunnerResolver>();
|
||||
testRunnerResolver.Should().BeOfType<ParameterTestRunnerNameResolver>();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -12,7 +12,7 @@ using Xunit;
|
|||
|
||||
namespace Microsoft.Dotnet.Tools.Test.Tests
|
||||
{
|
||||
public class GivenAnAssemblyTestRunnerResolver
|
||||
public class GivenAnAssemblyTestRunnerNameResolver
|
||||
{
|
||||
private readonly string _directoryOfAssemblyUnderTest = Path.Combine("c:", "some", "path");
|
||||
|
||||
|
@ -28,7 +28,8 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
directoryMock.AddFile(_directoryOfAssemblyUnderTest, TestRunnerFileName);
|
||||
|
||||
var pathToAssemblyUnderTest = Path.Combine(_directoryOfAssemblyUnderTest, TestRunnerFileName);
|
||||
var assemblyTestRunnerResolver = new AssemblyTestRunnerResolver(pathToAssemblyUnderTest, directoryMock);
|
||||
var assemblyTestRunnerResolver =
|
||||
new AssemblyTestRunnerNameResolver(pathToAssemblyUnderTest, directoryMock);
|
||||
|
||||
var testRunner = assemblyTestRunnerResolver.ResolveTestRunner();
|
||||
|
||||
|
@ -44,7 +45,8 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
directoryMock.AddFile(_directoryOfAssemblyUnderTest, "dotnet-test-someOtherTestRunner.dll");
|
||||
directoryMock.AddFile(_directoryOfAssemblyUnderTest, "dotnet-test-AndYetAnotherTestRunner.dll");
|
||||
|
||||
var assemblyTestRunnerResolver = new AssemblyTestRunnerResolver(_directoryOfAssemblyUnderTest, directoryMock);
|
||||
var assemblyTestRunnerResolver =
|
||||
new AssemblyTestRunnerNameResolver(_directoryOfAssemblyUnderTest, directoryMock);
|
||||
|
||||
var bestEffortTestRunner = assemblyTestRunnerResolver.ResolveTestRunner();
|
||||
|
||||
|
@ -56,7 +58,8 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
{
|
||||
var directoryMock = new DirectoryMock();
|
||||
|
||||
var assemblyTestRunnerResolver = new AssemblyTestRunnerResolver(_directoryOfAssemblyUnderTest, directoryMock);
|
||||
var assemblyTestRunnerResolver =
|
||||
new AssemblyTestRunnerNameResolver(_directoryOfAssemblyUnderTest, directoryMock);
|
||||
|
||||
var testRunner = assemblyTestRunnerResolver.ResolveTestRunner();
|
||||
|
||||
|
@ -94,4 +97,4 @@ namespace Microsoft.Dotnet.Tools.Test.Tests
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue