public void BuildSucceedsForNonApplicationPackage() { var project = Runtime.Project.GetProject(@"{ }", @"foo", @"c:\foo\project.json"); var builder = new InstallBuilder(project, null, null); Assert.True(builder.Build(@"c:\foo")); }
public void NoCommandsIsNonApplicationPackage() { var project = Runtime.Project.GetProject(@"{ }", @"foo", @"c:\foo\project.json"); var builder = new InstallBuilder(project, null, null); Assert.False(builder.IsApplicationPackage); }
public void ProjectWithCommandsIsApplicationPackage() { var project = Runtime.Project.GetProject(@"{ ""commands"" : { ""demo"":""demo"" } }", @"foo", @"c:\foo\project.json"); var builder = new InstallBuilder(project, null, null); Assert.True(builder.IsApplicationPackage); }
public void NotAllowedCommandNamesAreReportedAndTheBuildFails() { var project = Runtime.Project.GetProject(@"{ ""commands"" : { ""dnx"":""demo"" } }", @"foo", @"c:\foo\project.json"); var errorReport = new MockReport(); var builder = new InstallBuilder( project, null, new Reports() { Error = errorReport }); Assert.False(builder.Build(@"c:\foo")); Assert.Equal(1, errorReport.WriteLineCallCount); // TODO: Once we use resources, assert the full message Assert.True(errorReport.Messages.First().Contains("dnx")); }
public void NotAllowedCommandNamesAreReportedAndTheBuildFails() { var project = ProjectUtilities.GetProject(@"{ ""commands"" : { ""dnx"":""demo"" } }", @"foo", @"c:\foo\project.json"); var errorReport = new MockReport(); var builder = new InstallBuilder( project, null, new Reports() { Error = errorReport }); Assert.False(builder.Build(@"c:\foo")); Assert.Equal(1, errorReport.WriteLineCallCount); // TODO: Once we use resources, assert the full message Assert.True(errorReport.Messages.First().Contains("dnx")); }
public InstallAndStartHostBuilder(HostEnvironment environment, HostSettings settings, string version) { Environment = environment; Settings = new WindowsHostSettings { Name = $"{settings.Name}-{version}", DisplayName = $"{settings.DisplayName} ({version})", Description = settings.Description, InstanceName = settings.InstanceName, CanPauseAndContinue = settings.CanPauseAndContinue, CanSessionChanged = settings.CanSessionChanged, CanShutdown = settings.CanShutdown, }; _installBuilder = new InstallBuilder(Environment, Settings); _installBuilder.Sudo(); _startBuilder = new StartBuilder(_installBuilder); }
public void ApplicationScriptsHaveTheCorrectContent() { using (DisposableDir tempDir = new DisposableDir()) { string testDir = Path.Combine(tempDir, "TestApp"); Directory.CreateDirectory(testDir); string projectFilePath = Path.Combine(testDir, "project.json"); string projectFileContent = @"{ ""commands"" : { ""cmd1"":""demo1"", ""cmd2"":""demo2"" } }"; File.WriteAllText(projectFilePath, projectFileContent); Runtime.Project project; Runtime.Project.TryGetProject(projectFilePath, out project); var packageManager = new MockPackageManager(); var infoReport = new MockReport(); var builder = new InstallBuilder( project, packageManager, new Reports() { Information = infoReport, Verbose = new MockReport() }); Assert.True(builder.Build(testDir)); ValidateProjectFile(Path.Combine(testDir, "app", "project.json")); ValidateScriptFile(Path.Combine(testDir, "app", "cmd1.cmd")); ValidateScriptFile(Path.Combine(testDir, "app", "cmd2.cmd")); } }
static void Main(string[] args) { Dictionary <String, List <String> > parsedArgs = ParseCommandLineArgs(args); String sourcePath = Environment.ExpandEnvironmentVariables("%ZERO_SOURCE%"); String outputPath = Environment.ExpandEnvironmentVariables("%ZERO_OUTPUT%"); String installerPrefix = "ZeroEngineSetup"; String zeroEditorOutputSuffix = @"\Out\Win32\Release\ZeroEditor"; int zeroEngineTimeoutSeconds = 10; if (parsedArgs.ContainsKey("-SourcePath")) { sourcePath = parsedArgs["-SourcePath"][0]; } if (parsedArgs.ContainsKey("-OutputPath")) { outputPath = parsedArgs["-OutputPath"][0]; } if (parsedArgs.ContainsKey("-prefix")) { installerPrefix = parsedArgs["-prefix"][0]; } if (parsedArgs.ContainsKey("-outputSuffix")) { zeroEditorOutputSuffix = parsedArgs["-outputSuffix"][0]; } if (parsedArgs.ContainsKey("-MaxTimeout")) { int.TryParse(parsedArgs["-MaxTimeout"][0], out zeroEngineTimeoutSeconds); } InstallBuilder ib = new InstallBuilder(); String installerDirectory = ib.Run(sourcePath, outputPath, installerPrefix, zeroEditorOutputSuffix, zeroEngineTimeoutSeconds); //ReleaseNoteBuilder rnb = new ReleaseNoteBuilder(); //rnb.Run(installerDirectory); }
public Director(InstallBuilder installBuilder) { this.installBuilder = installBuilder; }
public void BuildSucceedsForNonApplicationPackage() { var project = ProjectUtilities.GetProject(@"{ }", @"foo", @"c:\foo\project.json"); var builder = new InstallBuilder(project, null, null); Assert.True(builder.Build(@"c:\foo")); }
public void ProjectWithCommandsIsApplicationPackage() { var project = ProjectUtilities.GetProject(@"{ ""commands"" : { ""demo"":""demo"" } }", @"foo", @"c:\foo\project.json"); var builder = new InstallBuilder(project, null, null); Assert.True(builder.IsApplicationPackage); }
public void NoCommandsIsNonApplicationPackage() { var project = ProjectUtilities.GetProject(@"{ }", @"foo", @"c:\foo\project.json"); var builder = new InstallBuilder(project, null, null); Assert.False(builder.IsApplicationPackage); }