private AppBaseCommandResolver SetupPlatformAppBaseCommandResolver( IEnvironmentProvider environment = null, bool forceGeneric = false) { environment = environment ?? new EnvironmentProvider(); IPlatformCommandSpecFactory platformCommandSpecFactory = new GenericPlatformCommandSpecFactory(); if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows && !forceGeneric) { platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); } var appBaseCommandResolver = new AppBaseCommandResolver(environment, platformCommandSpecFactory); return(appBaseCommandResolver); }
private ProjectPathCommandResolver SetupPlatformProjectPathCommandResolver( IEnvironmentProvider environment = null, bool forceGeneric = false) { environment = environment ?? new EnvironmentProvider(); IPlatformCommandSpecFactory platformCommandSpecFactory = new GenericPlatformCommandSpecFactory(); if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows) && !forceGeneric) { platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); } var projectPathCommandResolver = new ProjectPathCommandResolver(environment, platformCommandSpecFactory); return(projectPathCommandResolver); }
private PathCommandResolver SetupPlatformPathCommandResolver( IEnvironmentProvider environment = null, bool forceGeneric = false) { environment = environment ?? new EnvironmentProvider(); IPlatformCommandSpecFactory platformCommandSpecFactory = new GenericPlatformCommandSpecFactory(); if (PlatformServices.Default.Runtime.OperatingSystemPlatform == Platform.Windows && !forceGeneric) { platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); } var pathCommandResolver = new PathCommandResolver(environment, platformCommandSpecFactory); return(pathCommandResolver); }
public void It_prefers_EXE_over_CMD_when_two_command_candidates_exist_and_using_WindowsExePreferredCommandSpecFactory() { var environment = CommandResolverTestUtils.SetupEnvironmentProviderWhichFindsExtensions(".exe"); var platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); var appBaseCommandResolver = new AppBaseCommandResolver(environment, platformCommandSpecFactory); CommandResolverTestUtils.CreateNonRunnableTestCommand(AppContext.BaseDirectory, "appbasetestcommand1", ".exe"); CommandResolverTestUtils.CreateNonRunnableTestCommand(AppContext.BaseDirectory, "appbasetestcommand1", ".cmd"); var commandResolverArguments = new CommandResolverArguments() { CommandName = "appbasetestcommand1", CommandArguments = null }; var result = appBaseCommandResolver.Resolve(commandResolverArguments); result.Should().NotBeNull(); var commandFile = Path.GetFileName(result.Path); commandFile.Should().Be("appbasetestcommand1.exe"); }
private static ICommandResolver GetProjectDependenciesCommandResolver(NuGetFramework framework) { var environment = new EnvironmentProvider(); if (framework.IsDesktop()) { IPlatformCommandSpecFactory platformCommandSpecFactory = null; if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) { platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); } else { platformCommandSpecFactory = new GenericPlatformCommandSpecFactory(); } return(new OutputPathCommandResolver2(environment, platformCommandSpecFactory)); } else { var packagedCommandSpecFactory = new PackagedCommandSpecFactory(); return(new ProjectDependenciesCommandResolver(environment, packagedCommandSpecFactory)); } }
public void It_prefers_EXE_over_CMD_when_two_command_candidates_exist_and_using_WindowsExePreferredCommandSpecFactory() { var environment = new EnvironmentProvider(new [] { ".exe", ".cmd" }, new[] { s_testDirectory }); var platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); var pathCommandResolver = new PathCommandResolver(environment, platformCommandSpecFactory); CommandResolverTestUtils.CreateNonRunnableTestCommand(s_testDirectory, "extensionPreferenceCommand", ".exe"); CommandResolverTestUtils.CreateNonRunnableTestCommand(s_testDirectory, "extensionPreferenceCommand", ".cmd"); var commandResolverArguments = new CommandResolverArguments() { CommandName = "extensionPreferenceCommand", CommandArguments = null }; var result = pathCommandResolver.Resolve(commandResolverArguments); result.Should().NotBeNull(); var commandFile = Path.GetFileName(result.Path); commandFile.Should().Be("extensionPreferenceCommand.exe"); }
private ProjectPathCommandResolver SetupPlatformProjectPathCommandResolver( IEnvironmentProvider environment = null, bool forceGeneric = false) { environment = environment ?? new EnvironmentProvider(); IPlatformCommandSpecFactory platformCommandSpecFactory = new GenericPlatformCommandSpecFactory(); if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows && !forceGeneric) { platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); } var projectPathCommandResolver = new ProjectPathCommandResolver(environment, platformCommandSpecFactory); return projectPathCommandResolver; }
public void It_wraps_command_with_CMD_EXE_when_command_has_CMD_Extension_and_using_WindowsExePreferredCommandSpecFactory() { var environment = new EnvironmentProvider(new[] { ".cmd" }); var platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); var pathCommandResolver = new PathCommandResolver(environment, platformCommandSpecFactory); var testCommandPath = CommandResolverTestUtils.CreateNonRunnableTestCommand(s_testProjectDirectory, "cmdWrapCommand", ".cmd"); var commandResolverArguments = new CommandResolverArguments() { CommandName = "cmdWrapCommand", CommandArguments = null }; var result = pathCommandResolver.Resolve(commandResolverArguments); result.Should().NotBeNull(); var commandFile = Path.GetFileName(result.Path); commandFile.Should().Be("cmd.exe"); result.Args.Should().Contain(testCommandPath); }
public void It_prefers_EXE_over_CMD_when_two_command_candidates_exist_and_using_WindowsExePreferredCommandSpecFactory() { var environment = CommandResolverTestUtils.SetupEnvironmentProviderWhichFindsExtensions(".exe"); var platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); var projectPathCommandResolver = new ProjectPathCommandResolver(environment, platformCommandSpecFactory); CommandResolverTestUtils.CreateNonRunnableTestCommand(s_testProjectDirectory, "projectpathtestcommand1", ".exe"); CommandResolverTestUtils.CreateNonRunnableTestCommand(s_testProjectDirectory, "projectpathtestcommand1", ".cmd"); var commandResolverArguments = new CommandResolverArguments() { CommandName = "projectpathtestcommand1", CommandArguments = null, ProjectDirectory = s_testProjectDirectory }; var result = projectPathCommandResolver.Resolve(commandResolverArguments); result.Should().NotBeNull(); var commandFile = Path.GetFileName(result.Path); commandFile.Should().Be("projectpathtestcommand1.exe"); }