Move Microsoft.Dotnet.Cli.Utils.Tests to TAM
This commit is contained in:
parent
9f08302bbf
commit
fa9c795823
3 changed files with 83 additions and 41 deletions
|
@ -12,11 +12,10 @@ using Xunit;
|
|||
|
||||
namespace Microsoft.DotNet.Cli.Utils.Tests
|
||||
{
|
||||
public class GivenAProjectDependenciesCommandResolver
|
||||
public class GivenAProjectDependenciesCommandResolver : TestBase
|
||||
{
|
||||
|
||||
private static readonly string s_liveProjectDirectory =
|
||||
Path.Combine(AppContext.BaseDirectory, "TestAssets/TestProjects/AppWithDirectDependency");
|
||||
private const string TestProjectName = "AppWithDirectDependency";
|
||||
|
||||
[Fact]
|
||||
public void It_returns_null_when_CommandName_is_null()
|
||||
|
@ -61,11 +60,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "command",
|
||||
CommandArguments = new string[] { "" },
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = null
|
||||
};
|
||||
|
@ -80,11 +82,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "command",
|
||||
CommandArguments = new string[] { "" },
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = null,
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10
|
||||
};
|
||||
|
@ -99,11 +104,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "nonexistent-command",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10
|
||||
};
|
||||
|
@ -118,11 +126,15 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithBuildArtifacts()
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-hello",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10
|
||||
};
|
||||
|
@ -143,11 +155,15 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithBuildArtifacts()
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-hello",
|
||||
CommandArguments = new[] { "arg with space" },
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10
|
||||
};
|
||||
|
@ -159,15 +175,19 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void It_passes_depsfile_arg_to_host_when_returning_a_commandspec()
|
||||
public void It_passes_depsfile_arg_to_host_when_returning_a_CommandSpec()
|
||||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithBuildArtifacts()
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-hello",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10
|
||||
};
|
||||
|
@ -182,26 +202,30 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
public void It_sets_depsfile_in_output_path_in_commandspec()
|
||||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
var outputDir = Path.Combine(AppContext.BaseDirectory, "outdir");
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var outputDir = Path.Combine(testInstance.Path, "outdir");
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments
|
||||
{
|
||||
CommandName = "dotnet-hello",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10,
|
||||
OutputPath = outputDir
|
||||
};
|
||||
|
||||
var buildCommand = new BuildCommand(
|
||||
Path.Combine(s_liveProjectDirectory, "project.json"),
|
||||
Path.Combine(testInstance.Path, "project.json"),
|
||||
output: outputDir,
|
||||
framework: FrameworkConstants.CommonFrameworks.NetCoreApp10.ToString())
|
||||
.Execute().Should().Pass();
|
||||
|
||||
var projectContext = ProjectContext.Create(
|
||||
s_liveProjectDirectory,
|
||||
testInstance.Path,
|
||||
FrameworkConstants.CommonFrameworks.NetCoreApp10,
|
||||
RuntimeEnvironmentRidExtensions.GetAllCandidateRuntimeIdentifiers());
|
||||
|
||||
|
@ -218,26 +242,30 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
public void It_sets_depsfile_in_build_base_path_in_commandspec()
|
||||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
var buildBasePath = Path.Combine(AppContext.BaseDirectory, "basedir");
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var buildBasePath = Path.Combine(testInstance.Path, "basedir");
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments
|
||||
{
|
||||
CommandName = "dotnet-hello",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10,
|
||||
BuildBasePath = buildBasePath
|
||||
};
|
||||
|
||||
var buildCommand = new BuildCommand(
|
||||
Path.Combine(s_liveProjectDirectory, "project.json"),
|
||||
Path.Combine(testInstance.Path, "project.json"),
|
||||
buildBasePath: buildBasePath,
|
||||
framework: FrameworkConstants.CommonFrameworks.NetCoreApp10.ToString())
|
||||
.Execute().Should().Pass();
|
||||
|
||||
var projectContext = ProjectContext.Create(
|
||||
s_liveProjectDirectory,
|
||||
testInstance.Path,
|
||||
FrameworkConstants.CommonFrameworks.NetCoreApp10,
|
||||
RuntimeEnvironmentRidExtensions.GetAllCandidateRuntimeIdentifiers());
|
||||
|
||||
|
@ -255,11 +283,15 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectDependenciesCommandResolver = SetupProjectDependenciesCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithBuildArtifacts()
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-hello",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory,
|
||||
ProjectDirectory = testInstance.Path,
|
||||
Configuration = "Debug",
|
||||
Framework = FrameworkConstants.CommonFrameworks.NetCoreApp10
|
||||
};
|
||||
|
|
|
@ -7,6 +7,7 @@ using System.Linq;
|
|||
using FluentAssertions;
|
||||
using Microsoft.DotNet.ProjectModel;
|
||||
using Microsoft.DotNet.ProjectModel.Graph;
|
||||
using Microsoft.DotNet.TestFramework;
|
||||
using Microsoft.DotNet.Tools.Test.Utilities;
|
||||
using NuGet.Frameworks;
|
||||
using NuGet.Versioning;
|
||||
|
@ -14,12 +15,11 @@ using Xunit;
|
|||
|
||||
namespace Microsoft.DotNet.Cli.Utils.Tests
|
||||
{
|
||||
public class GivenAProjectToolsCommandResolver
|
||||
public class GivenAProjectToolsCommandResolver : TestBase
|
||||
{
|
||||
private static readonly NuGetFramework s_toolPackageFramework = FrameworkConstants.CommonFrameworks.NetCoreApp10;
|
||||
|
||||
private static readonly string s_liveProjectDirectory =
|
||||
Path.Combine(AppContext.BaseDirectory, "TestAssets/TestProjects/AppWithToolDependency");
|
||||
private const string TestProjectName = "AppWithToolDependency";
|
||||
|
||||
[Fact]
|
||||
public void It_returns_null_when_CommandName_is_null()
|
||||
|
@ -60,11 +60,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectToolsCommandResolver = SetupProjectToolsCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "nonexistent-command",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory
|
||||
ProjectDirectory = testInstance.Path
|
||||
};
|
||||
|
||||
var result = projectToolsCommandResolver.Resolve(commandResolverArguments);
|
||||
|
@ -77,11 +80,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectToolsCommandResolver = SetupProjectToolsCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-portable",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory
|
||||
ProjectDirectory = testInstance.Path
|
||||
};
|
||||
|
||||
var result = projectToolsCommandResolver.Resolve(commandResolverArguments);
|
||||
|
@ -100,11 +106,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectToolsCommandResolver = SetupProjectToolsCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-portable",
|
||||
CommandArguments = new[] { "arg with space" },
|
||||
ProjectDirectory = s_liveProjectDirectory
|
||||
ProjectDirectory = testInstance.Path
|
||||
};
|
||||
|
||||
var result = projectToolsCommandResolver.Resolve(commandResolverArguments);
|
||||
|
@ -118,11 +127,14 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectToolsCommandResolver = SetupProjectToolsCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-portable",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory
|
||||
ProjectDirectory = testInstance.Path
|
||||
};
|
||||
|
||||
var result = projectToolsCommandResolver.Resolve(commandResolverArguments);
|
||||
|
@ -138,14 +150,17 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
{
|
||||
var projectToolsCommandResolver = SetupProjectToolsCommandResolver();
|
||||
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var commandResolverArguments = new CommandResolverArguments()
|
||||
{
|
||||
CommandName = "dotnet-portable",
|
||||
CommandArguments = null,
|
||||
ProjectDirectory = s_liveProjectDirectory
|
||||
ProjectDirectory = testInstance.Path
|
||||
};
|
||||
|
||||
var context = ProjectContext.Create(Path.Combine(s_liveProjectDirectory, "project.json"), s_toolPackageFramework);
|
||||
var context = ProjectContext.Create(Path.Combine(testInstance.Path, "project.json"), s_toolPackageFramework);
|
||||
|
||||
var nugetPackagesRoot = context.PackagesDirectory;
|
||||
var toolPathCalculator = new ToolPathCalculator(nugetPackagesRoot);
|
||||
|
@ -180,7 +195,10 @@ namespace Microsoft.DotNet.Cli.Utils.Tests
|
|||
[Fact]
|
||||
public void Generate_deps_json_method_doesnt_overwrite_when_deps_file_already_exists()
|
||||
{
|
||||
var context = ProjectContext.Create(Path.Combine(s_liveProjectDirectory, "project.json"), s_toolPackageFramework);
|
||||
var testInstance = TestAssetsManager.CreateTestInstance(TestProjectName)
|
||||
.WithLockFiles();
|
||||
|
||||
var context = ProjectContext.Create(Path.Combine(testInstance.Path, "project.json"), s_toolPackageFramework);
|
||||
|
||||
var nugetPackagesRoot = context.PackagesDirectory;
|
||||
var toolPathCalculator = new ToolPathCalculator(nugetPackagesRoot);
|
||||
|
|
|
@ -14,20 +14,12 @@ namespace StreamForwarderTests
|
|||
public class StreamForwarderTests : TestBase
|
||||
{
|
||||
private static readonly string s_rid = RuntimeEnvironmentRidExtensions.GetLegacyRestoreRuntimeIdentifier();
|
||||
private static readonly string s_testProjectRoot = Path.Combine(AppContext.BaseDirectory, "TestAssets", "TestProjects");
|
||||
|
||||
private TempDirectory _root;
|
||||
|
||||
public static void Main()
|
||||
{
|
||||
Console.WriteLine("Dummy Entrypoint");
|
||||
}
|
||||
|
||||
public StreamForwarderTests()
|
||||
{
|
||||
_root = Temp.CreateDirectory();
|
||||
}
|
||||
|
||||
public static IEnumerable<object[]> ForwardingTheoryVariations
|
||||
{
|
||||
get
|
||||
|
@ -127,15 +119,15 @@ namespace StreamForwarderTests
|
|||
|
||||
private string SetupTestProject()
|
||||
{
|
||||
var sourceTestProjectPath = Path.Combine(s_testProjectRoot, "OutputStandardOutputAndError");
|
||||
|
||||
var binTestProjectPath = _root.CopyDirectory(sourceTestProjectPath).Path;
|
||||
var testInstance = TestAssetsManager.CreateTestInstance("OutputStandardOutputAndError")
|
||||
.WithLockFiles();
|
||||
|
||||
var buildCommand = new BuildCommand(Path.Combine(binTestProjectPath, "project.json"));
|
||||
var buildCommand = new BuildCommand(Path.Combine(testInstance.Path, "project.json"));
|
||||
buildCommand.Execute();
|
||||
|
||||
var buildOutputExe = "OutputStandardOutputAndError" + Constants.ExeSuffix;
|
||||
var buildOutputPath = Path.Combine(binTestProjectPath, "bin/Debug/netcoreapp1.0", buildOutputExe);
|
||||
var buildOutputPath = Path.Combine(testInstance.Path, "bin/Debug/netcoreapp1.0", buildOutputExe);
|
||||
|
||||
return buildOutputPath;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue