From 9c80ba9ad512d4904e84b96eac43fa7541541453 Mon Sep 17 00:00:00 2001 From: William Li Date: Wed, 14 Jul 2021 15:56:45 -0700 Subject: [PATCH] Replace all instances of GetWorkloadInstance with Instance --- src/Cli/dotnet/Parser.cs | 10 ------- .../GivenDotnetWorkloadInstall.cs | 28 +++++++++---------- .../GivenDotnetWorkloadList.cs | 4 +-- ...nWorkloadInstallerAndWorkloadsInstalled.cs | 6 ++-- .../GivenDotnetWorkloadRepair.cs | 6 ++-- .../GivenDotnetWorkloadSearch.cs | 18 ++++++------ .../GivenDotnetWorkloadUninstall.cs | 4 +-- .../GivenDotnetWorkloadUpdate.cs | 24 ++++++++-------- 8 files changed, 45 insertions(+), 55 deletions(-) diff --git a/src/Cli/dotnet/Parser.cs b/src/Cli/dotnet/Parser.cs index 6708d611f5d4..6dec4c9abf47 100644 --- a/src/Cli/dotnet/Parser.cs +++ b/src/Cli/dotnet/Parser.cs @@ -111,16 +111,6 @@ private static CommandLineBuilder DisablePosixBinding(this CommandLineBuilder bu .DisablePosixBinding() .Build(); - public static System.CommandLine.Parsing.Parser GetWorkloadsInstance { get; } = new CommandLineBuilder(ConfigureCommandLine(new RootCommand())) - .UseExceptionHandler(ExceptionHandler) - .UseHelp() - .UseHelpBuilder(context => new DotnetHelpBuilder(context.Console)) - .UseResources(new CommandLineValidationMessages()) - .UseParseDirective() - .UseSuggestDirective() - .DisablePosixBinding() - .Build(); - private static void ExceptionHandler(Exception exception, InvocationContext context) { if (exception is TargetInvocationException) diff --git a/src/Tests/dotnet-workload-install.Tests/GivenDotnetWorkloadInstall.cs b/src/Tests/dotnet-workload-install.Tests/GivenDotnetWorkloadInstall.cs index 6702fb7ae522..e52dad066c2b 100644 --- a/src/Tests/dotnet-workload-install.Tests/GivenDotnetWorkloadInstall.cs +++ b/src/Tests/dotnet-workload-install.Tests/GivenDotnetWorkloadInstall.cs @@ -53,7 +53,7 @@ public void GivenWorkloadInstallItErrorsOnFakeWorkloadName() public void GivenWorkloadInstallItCanInstallPacks() { var mockWorkloadIds = new WorkloadId[] { new WorkloadId("xamarin-android") }; - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--skip-manifest-update" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--skip-manifest-update" }); (_, var installManager, var installer, _, _, _) = GetTestInstallers(parseResult); installManager.InstallWorkloads(mockWorkloadIds, true); @@ -69,7 +69,7 @@ public void GivenWorkloadInstallItCanInstallPacks() public void GivenWorkloadInstallItCanRollBackPackInstallation() { var mockWorkloadIds = new WorkloadId[] { new WorkloadId("xamarin-android"), new WorkloadId("xamarin-android-build") }; - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "xamarin-android-build", "--skip-manifest-update" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "xamarin-android-build", "--skip-manifest-update" }); (_, var installManager, var installer, var workloadResolver, _, _) = GetTestInstallers(parseResult, failingWorkload: "xamarin-android-build"); var exceptionThrown = Assert.Throws(() => installManager.InstallWorkloads(mockWorkloadIds, true)); @@ -91,7 +91,7 @@ public void GivenWorkloadInstallOnFailingRollbackItDisplaysTopLevelError() var dotnetRoot = Path.Combine(testDirectory, "dotnet"); var installer = new MockPackWorkloadInstaller(failingWorkload: "xamarin-android-build", failingRollback: true); var workloadResolver = WorkloadResolver.CreateForTests(new MockManifestProvider(new[] { _manifestPath }), new string[] { dotnetRoot }); - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "xamarin-android-build", "--skip-manifest-update" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "xamarin-android-build", "--skip-manifest-update" }); var installManager = new WorkloadInstallCommand(parseResult, reporter: _reporter, workloadResolver: workloadResolver, workloadInstaller: installer, version: "6.0.100"); var exceptionThrown = Assert.Throws(() => installManager.InstallWorkloads(mockWorkloadIds, true)); @@ -99,11 +99,11 @@ public void GivenWorkloadInstallOnFailingRollbackItDisplaysTopLevelError() string.Join(" ", _reporter.Lines).Should().Contain("Rollback failure"); } - + [Fact] public void GivenWorkloadInstallItCanUpdateAdvertisingManifests() { - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android" }); (_, var installManager, var installer, _, var manifestUpdater, _) = GetTestInstallers(parseResult); installManager.InstallWorkloads(new List(), false); // Don't actually do any installs, just update manifests @@ -117,7 +117,7 @@ public void GivenWorkloadInstallItCanUpdateAdvertisingManifests() public void GivenWorkloadInstallItCanUpdateInstalledManifests() { var parseResult = - Parser.GetWorkloadsInstance.Parse(new string[] {"dotnet", "workload", "install", "xamarin-android"}); + Parser.Instance.Parse(new string[] {"dotnet", "workload", "install", "xamarin-android"}); var manifestsToUpdate = new (ManifestId, ManifestVersion, ManifestVersion, Dictionary Workloads)[] @@ -148,7 +148,7 @@ public void GivenWorkloadInstallFromCacheItInstallsCachedManifest() }; var cachePath = Path.Combine(_testAssetsManager.CreateTestDirectory(identifier: "mockCache").Path, "mockCachePath"); - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--from-cache", cachePath }); @@ -167,7 +167,7 @@ public void GivenWorkloadInstallFromCacheItInstallsCachedManifest() public void GivenWorkloadInstallItCanDownloadToOfflineCache() { var cachePath = Path.Combine(_testAssetsManager.CreateTestDirectory(identifier: "mockCache").Path, "mockCachePath"); - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--download-to-cache", cachePath }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--download-to-cache", cachePath }); (_, var installManager, var installer, _, var manifestUpdater, _) = GetTestInstallers(parseResult, tempDirManifestPath: _manifestPath); installManager.Execute(); @@ -185,7 +185,7 @@ public void GivenWorkloadInstallItCanInstallFromOfflineCache() { var mockWorkloadIds = new WorkloadId[] { new WorkloadId("xamarin-android") }; var cachePath = "mockCachePath"; - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--from-cache", cachePath }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--from-cache", cachePath }); (_, var installManager, var installer, _, _, var nugetDownloader) = GetTestInstallers(parseResult); installManager.Execute(); @@ -197,11 +197,11 @@ public void GivenWorkloadInstallItCanInstallFromOfflineCache() installer.InstalledPacks.Where(pack => pack.Id.Contains("Android")).Count().Should().Be(8); nugetDownloader.DownloadCallParams.Count().Should().Be(0); } - + [Fact] public void GivenWorkloadInstallItPrintsDownloadUrls() { - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--print-download-link-only" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", "xamarin-android", "--print-download-link-only" }); (_, var installManager, _, _, _, _) = GetTestInstallers(parseResult, tempDirManifestPath: _manifestPath); installManager.Execute(); @@ -222,7 +222,7 @@ public void GivenWorkloadInstallItErrorsOnUnsupportedPlatform() var workloadResolver = WorkloadResolver.CreateForTests(new MockManifestProvider(new[] { manifestPath }), new string[] { dotnetRoot }); var nugetDownloader = new MockNuGetPackageDownloader(dotnetRoot); var manifestUpdater = new MockWorkloadManifestUpdater(); - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", mockWorkloadId }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", mockWorkloadId }); var exceptionThrown = Assert.Throws(() => new WorkloadInstallCommand(parseResult, reporter: _reporter, workloadResolver: workloadResolver, workloadInstaller: installer, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, dotnetDir: dotnetRoot, version: "6.0.100")); @@ -243,13 +243,13 @@ public void GivenWorkloadInstallItDoesNotRemoveOldInstallsOnRollback() var installingWorkload = "mock-2"; // Successfully install a workload - var installParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", existingWorkload }); + var installParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", existingWorkload }); var installCommand = new WorkloadInstallCommand(installParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: new MockNuGetPackageDownloader(dotnetRoot), workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); installCommand.Execute(); // Install a workload with a mocked nuget failure - installParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); + installParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); installCommand = new WorkloadInstallCommand(installParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); var exceptionThrown = Assert.Throws(() => installCommand.Execute()); diff --git a/src/Tests/dotnet-workload-list.Tests/GivenDotnetWorkloadList.cs b/src/Tests/dotnet-workload-list.Tests/GivenDotnetWorkloadList.cs index 9ab712252245..9af5664a393d 100644 --- a/src/Tests/dotnet-workload-list.Tests/GivenDotnetWorkloadList.cs +++ b/src/Tests/dotnet-workload-list.Tests/GivenDotnetWorkloadList.cs @@ -23,8 +23,8 @@ public class GivenDotnetWorkloadList : SdkTest public GivenDotnetWorkloadList(ITestOutputHelper log) : base(log) { _reporter = new BufferedReporter(); - _machineReadableParseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload list --machine-readable"); - _parseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload list"); + _machineReadableParseResult = Parser.Instance.Parse("dotnet workload list --machine-readable"); + _parseResult = Parser.Instance.Parse("dotnet workload list"); } [Fact] diff --git a/src/Tests/dotnet-workload-list.Tests/GivenWorkloadInstallerAndWorkloadsInstalled.cs b/src/Tests/dotnet-workload-list.Tests/GivenWorkloadInstallerAndWorkloadsInstalled.cs index 92975618e016..1ff884358465 100644 --- a/src/Tests/dotnet-workload-list.Tests/GivenWorkloadInstallerAndWorkloadsInstalled.cs +++ b/src/Tests/dotnet-workload-list.Tests/GivenWorkloadInstallerAndWorkloadsInstalled.cs @@ -86,7 +86,7 @@ private void Setup(string identifier) }) }; - ParseResult listParseResult = Parser.GetWorkloadsInstance.Parse(new[] + ParseResult listParseResult = Parser.Instance.Parse(new[] { "dotnet", "workload", "list", "--machine-readable", WorkloadInstallCommandParser.VersionOption.Aliases.First(), "7.0.100" }); @@ -128,7 +128,7 @@ public void ItShouldGetListOfWorkloadWithCurrentSdkVersionBand() public void GivenLowerTargetVersionItShouldThrow() { _workloadListCommand = new WorkloadListCommand( - Parser.GetWorkloadsInstance.Parse(new[] + Parser.Instance.Parse(new[] { "dotnet", "workload", "list", "--machine-readable", WorkloadInstallCommandParser.VersionOption.Aliases.First(), "5.0.306" }), @@ -148,7 +148,7 @@ public void GivenLowerTargetVersionItShouldThrow() public void GivenSameLowerTargetVersionBandItShouldNotThrow() { _workloadListCommand = new WorkloadListCommand( - Parser.GetWorkloadsInstance.Parse(new[] + Parser.Instance.Parse(new[] { "dotnet", "workload", "list", "--machine-readable", WorkloadInstallCommandParser.VersionOption.Aliases.First(), "6.0.100" }), diff --git a/src/Tests/dotnet-workload-repair.Tests/GivenDotnetWorkloadRepair.cs b/src/Tests/dotnet-workload-repair.Tests/GivenDotnetWorkloadRepair.cs index bca61d346354..2f09910530ac 100644 --- a/src/Tests/dotnet-workload-repair.Tests/GivenDotnetWorkloadRepair.cs +++ b/src/Tests/dotnet-workload-repair.Tests/GivenDotnetWorkloadRepair.cs @@ -28,7 +28,7 @@ public class GivenDotnetWorkloadRepair : SdkTest public GivenDotnetWorkloadRepair(ITestOutputHelper log) : base(log) { _reporter = new BufferedReporter(); - _parseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload repair"); + _parseResult = Parser.Instance.Parse("dotnet workload repair"); _manifestPath = Path.Combine(_testAssetsManager.GetAndValidateTestProjectDirectory("SampleManifest"), "Sample.json"); } @@ -61,7 +61,7 @@ public void GivenExtraPacksInstalledRepairGarbageCollects() var installingWorkload = "xamarin-android"; // Install a workload - var installParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); + var installParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); var installCommand = new WorkloadInstallCommand(installParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); installCommand.Execute(); @@ -99,7 +99,7 @@ public void GivenMissingPacksRepairFixesInstall() var installingWorkload = "xamarin-android"; // Install a workload - var installParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); + var installParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); var installCommand = new WorkloadInstallCommand(installParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); installCommand.Execute(); diff --git a/src/Tests/dotnet-workload-search.Tests/GivenDotnetWorkloadSearch.cs b/src/Tests/dotnet-workload-search.Tests/GivenDotnetWorkloadSearch.cs index d5f6a181a341..0d64de973655 100644 --- a/src/Tests/dotnet-workload-search.Tests/GivenDotnetWorkloadSearch.cs +++ b/src/Tests/dotnet-workload-search.Tests/GivenDotnetWorkloadSearch.cs @@ -21,15 +21,15 @@ public class GivenDotnetWorkloadSearch : SdkTest private readonly IEnumerable _avaliableWorkloads = new List() { - new WorkloadDefinition(new WorkloadId("mock-workload-1"), false, null, WorkloadDefinitionKind.Dev, new List(), + new WorkloadDefinition(new WorkloadId("mock-workload-1"), false, null, WorkloadDefinitionKind.Dev, new List(), new List(), new List()), - new WorkloadDefinition(new WorkloadId("mock-workload-2"), false, string.Empty, WorkloadDefinitionKind.Build, null, + new WorkloadDefinition(new WorkloadId("mock-workload-2"), false, string.Empty, WorkloadDefinitionKind.Build, null, new List(), new List() { "platform1", "platform2" }), - new WorkloadDefinition(new WorkloadId("mock-workload-3"), true, "Fake description 1", WorkloadDefinitionKind.Dev, + new WorkloadDefinition(new WorkloadId("mock-workload-3"), true, "Fake description 1", WorkloadDefinitionKind.Dev, new List() { new WorkloadId("mock-workload-2") }, new List(), new List()), - new WorkloadDefinition(new WorkloadId("fake-workload-1"), true, null, WorkloadDefinitionKind.Build, + new WorkloadDefinition(new WorkloadId("fake-workload-1"), true, null, WorkloadDefinitionKind.Build, new List(), new List(), null), - new WorkloadDefinition(new WorkloadId("fake-workload-2"), false, "Fake description 2", WorkloadDefinitionKind.Dev, null, + new WorkloadDefinition(new WorkloadId("fake-workload-2"), false, "Fake description 2", WorkloadDefinitionKind.Dev, null, new List(), new List()) }; @@ -42,7 +42,7 @@ public GivenDotnetWorkloadSearch(ITestOutputHelper log) : base(log) public void GivenNoWorkloadsAreInstalledSearchIsEmpty() { _reporter.Clear(); - var parseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload search"); + var parseResult = Parser.Instance.Parse("dotnet workload search"); var workloadResolver = new MockWorkloadResolver(new List()); var command = new WorkloadSearchCommand(parseResult, _reporter, workloadResolver, "6.0.100"); command.Execute(); @@ -54,7 +54,7 @@ public void GivenNoWorkloadsAreInstalledSearchIsEmpty() public void GivenNoStubIsProvidedSearchShowsAllWorkloads() { _reporter.Clear(); - var parseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload search"); + var parseResult = Parser.Instance.Parse("dotnet workload search"); var workloadResolver = new MockWorkloadResolver(_avaliableWorkloads); var command = new WorkloadSearchCommand(parseResult, _reporter, workloadResolver, "6.0.100"); command.Execute(); @@ -78,7 +78,7 @@ public void GivenNoStubIsProvidedSearchShowsAllWorkloads() public void GivenDetailedVerbositySearchShowsAllColumns() { _reporter.Clear(); - var parseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload search -v d"); + var parseResult = Parser.Instance.Parse("dotnet workload search -v d"); var workloadResolver = new MockWorkloadResolver(_avaliableWorkloads); var command = new WorkloadSearchCommand(parseResult, _reporter, workloadResolver, "6.0.100"); command.Execute(); @@ -102,7 +102,7 @@ public void GivenDetailedVerbositySearchShowsAllColumns() public void GivenStubIsProvidedSearchShowsAllMatchingWorkloads() { _reporter.Clear(); - var parseResult = Parser.GetWorkloadsInstance.Parse("dotnet workload search mock"); + var parseResult = Parser.Instance.Parse("dotnet workload search mock"); var workloadResolver = new MockWorkloadResolver(_avaliableWorkloads); var command = new WorkloadSearchCommand(parseResult, _reporter, workloadResolver, "6.0.100"); command.Execute(); diff --git a/src/Tests/dotnet-workload-uninstall.Tests/GivenDotnetWorkloadUninstall.cs b/src/Tests/dotnet-workload-uninstall.Tests/GivenDotnetWorkloadUninstall.cs index cf29bf4653d2..04124718ef47 100644 --- a/src/Tests/dotnet-workload-uninstall.Tests/GivenDotnetWorkloadUninstall.cs +++ b/src/Tests/dotnet-workload-uninstall.Tests/GivenDotnetWorkloadUninstall.cs @@ -148,7 +148,7 @@ private void InstallWorkload(string installingWorkload, string testDirectory, st var workloadResolver = WorkloadResolver.CreateForTests(new MockManifestProvider(new[] { _manifestPath }), new string[] { dotnetRoot }); var nugetDownloader = new MockNuGetPackageDownloader(dotnetRoot); var manifestUpdater = new MockWorkloadManifestUpdater(); - var installParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); + var installParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); var installCommand = new WorkloadInstallCommand(installParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); installCommand.Execute(); @@ -159,7 +159,7 @@ private void UninstallWorkload(string uninstallingWorkload, string testDirectory var dotnetRoot = Path.Combine(testDirectory, "dotnet"); var workloadResolver = WorkloadResolver.CreateForTests(new MockManifestProvider(new[] { _manifestPath }), new string[] { dotnetRoot }); var nugetDownloader = new MockNuGetPackageDownloader(dotnetRoot); - var uninstallParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "uninstall", uninstallingWorkload }); + var uninstallParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "uninstall", uninstallingWorkload }); var uninstallCommand = new WorkloadUninstallCommand(uninstallParseResult, reporter: _reporter, workloadResolver, nugetDownloader, dotnetDir: dotnetRoot, version: sdkFeatureVersion); uninstallCommand.Execute(); diff --git a/src/Tests/dotnet-workload-update.Tests/GivenDotnetWorkloadUpdate.cs b/src/Tests/dotnet-workload-update.Tests/GivenDotnetWorkloadUpdate.cs index 793b410b543a..b2a28ebf7eae 100644 --- a/src/Tests/dotnet-workload-update.Tests/GivenDotnetWorkloadUpdate.cs +++ b/src/Tests/dotnet-workload-update.Tests/GivenDotnetWorkloadUpdate.cs @@ -34,7 +34,7 @@ public GivenDotnetWorkloadUpdate(ITestOutputHelper log) : base(log) { _reporter = new BufferedReporter(); _manifestPath = Path.Combine(_testAssetsManager.GetAndValidateTestProjectDirectory("SampleManifest"), "Sample.json"); - _parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update" }); + _parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update" }); } [Fact] @@ -49,7 +49,7 @@ public void GivenWorkloadUpdateItRemovesOldPacksAfterInstall() var installingWorkload = "xamarin-android"; // Install a workload - var installParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); + var installParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "install", installingWorkload }); var installCommand = new WorkloadInstallCommand(installParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); installCommand.Execute(); @@ -83,7 +83,7 @@ public void GivenWorkloadUpdateItRemovesOldPacksAfterInstall() new string[] { dotnetRoot }); // Update workload - var updateParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update" }); + var updateParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update" }); var updateCommand = new WorkloadUpdateCommand(updateParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); updateCommand.Execute(); @@ -142,7 +142,7 @@ public void GivenWorkloadUpdateAcrossFeatureBandsItUpdatesPacks() File.Create(Path.Combine(dotnetRoot, "metadata", "workloads", sdkFeatureVersion, "InstalledWorkloads", installingWorkload)); // Update workload (without installing any workloads to this feature band) - var updateParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--from-previous-sdk" }); + var updateParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--from-previous-sdk" }); var updateCommand = new WorkloadUpdateCommand(updateParseResult, reporter: _reporter, workloadResolver: workloadResolver, nugetPackageDownloader: nugetDownloader, workloadManifestUpdater: manifestUpdater, userHome: testDirectory, version: sdkFeatureVersion, dotnetDir: dotnetRoot, tempDirPath: testDirectory); updateCommand.Execute(); @@ -195,7 +195,7 @@ public void GivenWorkloadUpdateItCanDownloadToOfflineCache() { var mockWorkloadIds = new WorkloadId[] { new WorkloadId("xamarin-android") }; var cachePath = Path.Combine(_testAssetsManager.CreateTestDirectory(identifier: "cachePath").Path, "mockCachePath"); - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--download-to-cache", cachePath }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--download-to-cache", cachePath }); (_, var command, var installer, _, var manifestUpdater, _) = GetTestInstallers(parseResult, installedWorkloads: mockWorkloadIds, includeInstalledPacks: true); command.Execute(); @@ -214,7 +214,7 @@ public void GivenWorkloadUpdateItCanInstallFromOfflineCache() { var mockWorkloadIds = new WorkloadId[] { new WorkloadId("xamarin-android") }; var cachePath = "mockCachePath"; - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--from-cache", cachePath }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--from-cache", cachePath }); (_, var command, var installer, _, _, var nugetDownloader) = GetTestInstallers(parseResult, installedWorkloads: mockWorkloadIds); command.Execute(); @@ -230,7 +230,7 @@ public void GivenWorkloadUpdateItCanInstallFromOfflineCache() public void GivenWorkloadUpdateItPrintsDownloadUrls() { var mockWorkloadIds = new WorkloadId[] { new WorkloadId("xamarin-android") }; - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--print-download-link-only" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--print-download-link-only" }); (_, var command, _, _, _, _) = GetTestInstallers(parseResult, installedWorkloads: mockWorkloadIds, includeInstalledPacks: true); command.Execute(); @@ -247,8 +247,8 @@ public void GivenWorkloadUpdateAcrossFeatureBandsItErrorsWhenManifestsDoNotExist { var testDirectory = _testAssetsManager.CreateTestDirectory().Path; var dotnetRoot = Path.Combine(testDirectory, "dotnet"); - var updateParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--sdk-version", "7.0.100" }); - + var updateParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--sdk-version", "7.0.100" }); + var exceptionThrown = Assert.Throws(() => new WorkloadUpdateCommand(updateParseResult, reporter: _reporter, dotnetDir: dotnetRoot)); exceptionThrown.Message.Should().Contain("No manifests exist"); } @@ -258,7 +258,7 @@ public void GivenWorkloadUpdateAcrossFeatureBandsItErrorsWhenUnableToReadManifes { var testDirectory = _testAssetsManager.CreateTestDirectory().Path; var dotnetRoot = Path.Combine(testDirectory, "dotnet"); - var updateParseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--sdk-version", "7.0.100" }); + var updateParseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--sdk-version", "7.0.100" }); // Write manifest of "new" format that we don't recognize Directory.CreateDirectory(Path.Combine(dotnetRoot, "sdk-manifests", "7.0.100", "mock.workload")); @@ -279,7 +279,7 @@ public void GivenWorkloadUpdateAcrossFeatureBandsItErrorsWhenUnableToReadManifes [Fact] public void GivenOnlyUpdateAdManifestItSucceeds() { - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--advertising-manifests-only" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--advertising-manifests-only" }); (_, var command, _, _, var manifestUpdater, _) = GetTestInstallers(parseResult); command.Execute(); @@ -289,7 +289,7 @@ public void GivenOnlyUpdateAdManifestItSucceeds() [Fact] public void GivenPrintRollbackDefinitionItIncludesAllInstalledManifests() { - var parseResult = Parser.GetWorkloadsInstance.Parse(new string[] { "dotnet", "workload", "update", "--print-rollback" }); + var parseResult = Parser.Instance.Parse(new string[] { "dotnet", "workload", "update", "--print-rollback" }); (_, var updateCommand, _, _, _, _) = GetTestInstallers(parseResult); updateCommand.Execute();