public void Install_Legacy_CanParseMultipleArgs(string testCase) { ITemplateEngineHost host = TestHost.GetVirtualHost(additionalComponents: BuiltInTemplatePackagesProviderFactory.GetComponents(includeTestTemplates: false)); NewCommand myCommand = (NewCommand)NewCommandFactory.Create("new", _ => host, _ => new TelemetryLogger(null, false), new NewCommandCallbacks()); var parseResult = myCommand.Parse(testCase); InstallCommandArgs args = new InstallCommandArgs((LegacyInstallCommand)parseResult.CommandResult.Command, parseResult); Assert.Equal(2, args.TemplatePackages.Count); Assert.Contains("source1", args.TemplatePackages); Assert.Contains("source2", args.TemplatePackages); }
public void Install_CanParseAddSourceOption(string optionName) { ITemplateEngineHost host = TestHost.GetVirtualHost(additionalComponents: BuiltInTemplatePackagesProviderFactory.GetComponents(includeTestTemplates: false)); NewCommand myCommand = (NewCommand)NewCommandFactory.Create("new", _ => host, _ => new TelemetryLogger(null, false), new NewCommandCallbacks()); var parseResult = myCommand.Parse($"new install source {optionName} my-custom-source"); InstallCommandArgs args = new InstallCommandArgs((InstallCommand)parseResult.CommandResult.Command, parseResult); Assert.Single(args.AdditionalSources); Assert.Contains("my-custom-source", args.AdditionalSources); Assert.Single(args.TemplatePackages); Assert.Contains("source", args.TemplatePackages); }
public void DebugFlagCanBeParsedOnSubcommandLevel(string command, string option) { Dictionary <string, Func <GlobalArgs, bool> > optionsMap = new Dictionary <string, Func <GlobalArgs, bool> >() { { "--debug:attach", args => args.DebugAttach }, { "--debug:ephemeral-hive", args => args.DebugVirtualizeSettings }, { "--debug:reinit", args => args.DebugReinit }, { "--debug:rebuild-cache", args => args.DebugRebuildCache }, { "--debug:show-config", args => args.DebugShowConfig } }; ITemplateEngineHost host = TestHost.GetVirtualHost(additionalComponents: BuiltInTemplatePackagesProviderFactory.GetComponents(includeTestTemplates: false)); NewCommand myCommand = (NewCommand)NewCommandFactory.Create("new", _ => host, _ => new TelemetryLogger(null, false), new NewCommandCallbacks()); var parseResult = ParserFactory.CreateParser(myCommand).Parse(command); InstallCommandArgs args = new InstallCommandArgs((InstallCommand)parseResult.CommandResult.Command, parseResult); Assert.True(optionsMap[option](args)); }