Select forward arguments to restore (#9830)

This commit is contained in:
William Li 2018-08-14 14:45:38 -07:00 committed by GitHub
parent 8ca823bfd6
commit d7b9504c9f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 140 additions and 19 deletions

View file

@ -57,7 +57,8 @@ namespace Microsoft.DotNet.Tests.Commands
filePermissionSetter: new NoOpFilePermissionSetter());
_environmentPathInstructionMock =
new EnvironmentPathInstructionMock(_reporter, _pathToPlaceShim);
_createToolPackageStoreAndInstaller = (_) => (_toolPackageStore, CreateToolPackageInstaller());
_createToolPackageStoreAndInstaller =
(location, forwardArguments) => (_toolPackageStore, CreateToolPackageInstaller());
ParseResult result = Parser.Instance.Parse($"dotnet tool install -g {PackageId}");
_appliedCommand = result["dotnet"]["tool"]["install"];
@ -114,7 +115,7 @@ namespace Microsoft.DotNet.Tests.Commands
var installCommand = new ToolInstallCommand(appliedCommand,
parseResult,
(_) => (_toolPackageStore, toolToolPackageInstaller),
(location, forwardArguments) => (_toolPackageStore, toolToolPackageInstaller),
_createShellShimRepository,
_environmentPathInstructionMock,
_reporter);
@ -165,7 +166,7 @@ namespace Microsoft.DotNet.Tests.Commands
var installToolCommand = new ToolInstallCommand(
_appliedCommand,
_parseResult,
(_) => (_toolPackageStore, toolPackageInstaller),
(location, forwardArguments) => (_toolPackageStore, toolPackageInstaller),
_createShellShimRepository,
_environmentPathInstructionMock,
_reporter);
@ -188,7 +189,7 @@ namespace Microsoft.DotNet.Tests.Commands
var installCommand = new ToolInstallCommand(
_appliedCommand,
_parseResult,
(_) => (_toolPackageStore, toolPackageInstaller),
(location, forwardArguments) => (_toolPackageStore, toolPackageInstaller),
_createShellShimRepository,
_environmentPathInstructionMock,
_reporter);
@ -237,7 +238,7 @@ namespace Microsoft.DotNet.Tests.Commands
var installCommand = new ToolInstallCommand(
_appliedCommand,
_parseResult,
(_) => (_toolPackageStore, toolPackageInstaller),
(location, forwardArguments) => (_toolPackageStore, toolPackageInstaller),
_createShellShimRepository,
_environmentPathInstructionMock,
_reporter);
@ -486,7 +487,7 @@ namespace Microsoft.DotNet.Tests.Commands
var installCommand = new ToolInstallCommand(appliedCommand,
parseResult,
(_) => (_toolPackageStore, new ToolPackageInstallerMock(
(location, forwardArguments) => (_toolPackageStore, new ToolPackageInstallerMock(
fileSystem: _fileSystem,
store: _toolPackageStore,
packagedShimsMap: packagedShimsMap,

View file

@ -206,7 +206,7 @@ namespace Microsoft.DotNet.Tests.Commands
return new ToolInstallCommand(
result["dotnet"]["tool"]["install"],
result,
(_) => (store, packageInstallerMock),
(location, forwardArguments) => (store, packageInstallerMock),
(_) => new ShellShimRepository(
new DirectoryPath(_shimsDirectory),
fileSystem: _fileSystem,

View file

@ -134,7 +134,7 @@ namespace Microsoft.DotNet.Tests.Commands
var command = new ToolUpdateCommand(
result["dotnet"]["tool"]["update"],
result,
_ => (_store,
(location, forwardArguments) => (_store,
new ToolPackageInstallerMock(
_fileSystem,
_store,
@ -163,7 +163,7 @@ namespace Microsoft.DotNet.Tests.Commands
var command = new ToolUpdateCommand(
result["dotnet"]["tool"]["update"],
result,
_ => (_store,
(location, forwardArguments) => (_store,
new ToolPackageInstallerMock(
_fileSystem,
_store,
@ -213,7 +213,7 @@ namespace Microsoft.DotNet.Tests.Commands
return new ToolInstallCommand(
result["dotnet"]["tool"]["install"],
result,
(_) => (_store, new ToolPackageInstallerMock(
(location, forwardArguments) => (_store, new ToolPackageInstallerMock(
_fileSystem,
_store,
new ProjectRestorerMock(
@ -233,7 +233,7 @@ namespace Microsoft.DotNet.Tests.Commands
return new ToolUpdateCommand(
result["dotnet"]["tool"]["update"],
result,
(_) => (_store, new ToolPackageInstallerMock(
(location, forwardArguments) => (_store, new ToolPackageInstallerMock(
_fileSystem,
_store,
new ProjectRestorerMock(

View file

@ -108,5 +108,35 @@ namespace Microsoft.DotNet.Tests.ParserTests
var appliedOptions = result["dotnet"]["tool"]["install"];
appliedOptions.SingleArgumentOrDefault("tool-path").Should().Be(@"C:\Tools");
}
[Fact]
public void InstallToolParserCanParseNoCacheOption()
{
var result =
Parser.Instance.Parse(@"dotnet tool install -g console.test.app --no-cache");
var appliedOptions = result["dotnet"]["tool"]["install"];
appliedOptions.OptionValuesToBeForwarded().Should().ContainSingle("--no-cache");
}
[Fact]
public void InstallToolParserCanParseIgnoreFailedSourcesOption()
{
var result =
Parser.Instance.Parse(@"dotnet tool install -g console.test.app --ignore-failed-sources");
var appliedOptions = result["dotnet"]["tool"]["install"];
appliedOptions.OptionValuesToBeForwarded().Should().ContainSingle("--ignore-failed-sources");
}
[Fact]
public void InstallToolParserCanParseDisableParallelOption()
{
var result =
Parser.Instance.Parse(@"dotnet tool install -g console.test.app --disable-parallel");
var appliedOptions = result["dotnet"]["tool"]["install"];
appliedOptions.OptionValuesToBeForwarded().Should().ContainSingle("--disable-parallel");
}
}
}

View file

@ -107,5 +107,35 @@ namespace Microsoft.DotNet.Tests.ParserTests
var appliedOptions = result["dotnet"]["tool"]["update"];
appliedOptions.SingleArgumentOrDefault("tool-path").Should().Be(@"C:\TestAssetLocalNugetFeed");
}
[Fact]
public void UpdateToolParserCanParseNoCacheOption()
{
var result =
Parser.Instance.Parse(@"dotnet tool update -g console.test.app --no-cache");
var appliedOptions = result["dotnet"]["tool"]["update"];
appliedOptions.OptionValuesToBeForwarded().Should().ContainSingle("--no-cache");
}
[Fact]
public void UpdateToolParserCanParseIgnoreFailedSourcesOption()
{
var result =
Parser.Instance.Parse(@"dotnet tool update -g console.test.app --ignore-failed-sources");
var appliedOptions = result["dotnet"]["tool"]["update"];
appliedOptions.OptionValuesToBeForwarded().Should().ContainSingle("--ignore-failed-sources");
}
[Fact]
public void UpdateToolParserCanParseDisableParallelOption()
{
var result =
Parser.Instance.Parse(@"dotnet tool update -g console.test.app --disable-parallel");
var appliedOptions = result["dotnet"]["tool"]["update"];
appliedOptions.OptionValuesToBeForwarded().Should().ContainSingle("--disable-parallel");
}
}
}