private void extractToolStripMenuItem_Click(object sender, EventArgs e) { if (currentArchive == null || !currentArchive.ArchivedFiles.Any()) { return; } FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog(); var result = folderBrowserDialog.ShowDialog(); if (result == DialogResult.Abort || result == DialogResult.Cancel) { return; } string outputDirectoryPath = folderBrowserDialog.SelectedPath; try { currentArchive.ExtractAllFiles(outputDirectoryPath, true); } catch (Exception) { Console.WriteLine("Something went wrong with extraction. Archive is likely invalid or corrupted."); return; } if (generateProjectCheckBox.Checked) { ProjectGenerator.GenerateProject(currentArchiveVersion, outputDirectoryPath); } statusLabel.Text = "Archive extracted succesfully."; }
public void GivenThereIsASpecFlowProjectWithAReferenceToTheExternalLibrary(string language) { var project = projectGenerator.GenerateProject(inputProjectDriver); projectCompiler.Compile(project); List <string> assembliesToReference = new List <string>(); var libName = inputProjectDriver.CompiledAssemblyPath; var savedLibPath = Path.Combine(Path.GetTempPath(), Path.GetFileName(libName)); File.Copy(libName, savedLibPath, true); assembliesToReference.Add(savedLibPath); foreach (var assemblyFileName in inputProjectDriver.FrameworkAssembliesToCopy) { var originalAssemblyPath = Path.Combine(inputProjectDriver.DeploymentFolder, assemblyFileName); var savedAssemblyPath = Path.Combine(Path.GetTempPath(), assemblyFileName); File.Copy(originalAssemblyPath, savedAssemblyPath, true); assembliesToReference.Add(savedAssemblyPath); } inputProjectDriver.Reset(); inputProjectDriver.ProjectName = "SpecFlow.TestProject"; inputProjectDriver.Language = language; foreach (var assemblyPath in assembliesToReference) { inputProjectDriver.References.Add(assemblyPath); } }
private void CompileInternal() { var project = projectGenerator.GenerateProject(inputProjectDriver); projectCompiler.Compile(project); _hooksDriver.EnsureInitialized(); }
public void WhenTheFeatureFilesInTheProjectAreGenerated() { var project = projectGenerator.GenerateProject(inputProjectDriver); try { compilationError = null; projectCompiler.Compile(project, "UpdateFeatureFilesInProject"); } catch (Exception ex) { compilationError = ex; } }
public void GivenThereIsASpecFlowProjectWithAReferenceToTheExternalLibrary() { var project = projectGenerator.GenerateProject(inputProjectDriver); projectCompiler.Compile(project); var libName = inputProjectDriver.CompiledAssemblyPath; var savedLibPath = Path.Combine(Path.GetTempPath(), Path.GetFileName(libName)); File.Copy(libName, savedLibPath, true); inputProjectDriver.DefaultBindingClass.OtherBindings.Clear(); inputProjectDriver.DefaultBindingClass.StepBindings.Clear(); inputProjectDriver.ProjectName = "SpecFlow.TestProject"; inputProjectDriver.References.Add(savedLibPath); }
public static void MakeProjectIndeterministic(RPGMakerVersion type, bool ignoreComplete = false) { try { FileDialog.CreateSaveDialog("Project File", "Pick a directory.", new string[] { Path.GetExtension(Program.ProjectPath) }, () => { Misc.EnsurePathExists(FileDialog._SaveDialog.DirectoryPath.ToString()); ProjectGenerator.GenerateProject(type, FileDialog._SaveDialog.DirectoryPath.ToString()); if (!ignoreComplete) { Application.Run(Operation.Complete); } }); } catch (Exception ex) { Application.RequestStop(); Operation.ShowError(ex.Message); } }
public static void MakeProjectWithSavePath(bool ignoreComplete = false) { try { Functions.Operation.ExecuteIfProjectSelected(() => { Misc.EnsurePathExists(FileDialog._SaveDialog.DirectoryPath.ToString()); ProjectGenerator.GenerateProject(RGSSAD.GetVersion(Program.ProjectPath), FileDialog._SaveDialog.DirectoryPath.ToString()); if (!ignoreComplete) { Application.Run(Operation.Complete); } }); } catch (Exception ex) { Application.RequestStop(); Operation.ShowError(ex.Message); } }
private void CompileInternal() { var project = projectGenerator.GenerateProject(inputProjectDriver); projectCompiler.Compile(project); }
private static void Main(string[] args) { _commandLineOptions = new CommandLineOptions(); if (Parser.Default.ParseArguments(args, _commandLineOptions) == false) { Environment.Exit(1); } if (_commandLineOptions.InputPaths.Count == 0) { Console.WriteLine(_commandLineOptions.GetUsage()); Environment.Exit(1); } var version = RGSSAD.GetVersion(_commandLineOptions.InputPaths.First()); if (version == RPGMakerVersion.Invalid) { Console.WriteLine("Invalid input file."); Environment.Exit(1); } string outputDirectoryPath; if (_commandLineOptions.OutputDirectoryPath != null) { outputDirectoryPath = _commandLineOptions.OutputDirectoryPath; } else { FileInfo fi = new FileInfo(_commandLineOptions.InputPaths.First()); outputDirectoryPath = fi.DirectoryName; } try { switch (version) { case RPGMakerVersion.Xp: case RPGMakerVersion.Vx: new RGSSADv1(_commandLineOptions.InputPaths.First()) .ExtractAllFiles(outputDirectoryPath); break; case RPGMakerVersion.VxAce: new RGSSADv3(_commandLineOptions.InputPaths.First()) .ExtractAllFiles(outputDirectoryPath); break; } } catch (InvalidArchiveException) { Console.WriteLine("Archive is invalid or corrupted. Reading failed."); Environment.Exit(1); } catch (UnsupportedArchiveException) { Console.WriteLine("Archive is not supported or it is corrupted."); Environment.Exit(1); } catch (Exception) { Console.WriteLine("Something went wrong with reading or extraction. Archive is likely invalid or corrupted."); Environment.Exit(1); } if (_commandLineOptions.GenerateProjectFile) { ProjectGenerator.GenerateProject(version, outputDirectoryPath); } }
private XElement Generate() { var userName = User.Identity.GetUserName(); var xmlDB = new XMLDatabase(userName, _context.Users.First(c => c.Name == userName).ActProject); String pageName; if (String.IsNullOrEmpty(userName)) { pageName = ""; } else { pageName = _context.Users.First(c => c.Name == userName).ActProject; } var controllerInfo = new ControllerInfo(); var datatypesInfo = new DataTypesInfo { Components = xmlDB.Components.ToList(), Standards = xmlDB.Standards.ToList(), Locations = xmlDB.Locations.ToList(), IOs = xmlDB.IOs.ToList(), //DIPulseSetups = _context.DIpulses.ToList(), Modules = xmlDB.Modules.ToList(), //MotFrqSetups = _context.MotFrqs.ToList(), //DIAlarmSetups = _context.DIAlarms.ToList(), //AIAlarmSetups = _context.AIAlarms.ToList(), ApplyLocationFilter = false }; var modulesInfo = new ModulesInfo { modules = xmlDB.Modules.ToList(), controller = new ControllerInfo { name = "StdPLC", description = "Standard controller" //TODO From database }, IOs = xmlDB.IOs.ToList(), Components = xmlDB.Components.ToList(), //MotFrqSetups = xmlDB.MotFrqs.ToList() }; var tagsInfo = new TagsInfo(); var programsInfo = new ProgramsInfo { IOs = xmlDB.IOs.ToList(), Modules = xmlDB.Modules.ToList(), //AIAlarmSetups = xmlDB.AIAlarms.ToList(), //DIAlarmSetups = xmlDB.DIAlarms.ToList(), //DIPulseSetups = xmlDB.DIpulses.ToList(), //MDirSetups = xmlDB.MDirs.ToList(), //MRevSetups = xmlDB.MRevs.ToList(), //MotFrqSetups = xmlDB.MotFrqs.ToList(), //StdVlvSetups = xmlDB.StdVlvs.ToList(), Components = xmlDB.Components.ToList() }; var tasksInfo = new TasksInfo(); var addOnInstructionDefinitionsInfo = new AddOnInstructionDefinitionsInfo { Components = xmlDB.Components.ToList(), Standards = xmlDB.Standards.ToList() }; var generator = new ProjectGenerator(controllerInfo, datatypesInfo, modulesInfo, addOnInstructionDefinitionsInfo, tagsInfo, programsInfo, tasksInfo); return(generator.GenerateProject()); }
public void TestMethod15() { ProjectGenerator generator = new ProjectGenerator(); generator.GenerateProject(Environment.CurrentDirectory, Consts.INFASTRUCTURE_NAMESPACE, "Automation"); }