public void TestConstructionFromProcessTask() { var processTask = Mock.Of <IProcessTask>(pt => pt.Path == "path"); var runtimeTask = new ExecutableRuntimeTask(processTask, null); Assert.AreEqual("path", runtimeTask.ExeFilepath); }
private ExecutableRuntimeTask GetRuntimeTask() { var factory = new RuntimeTaskFactory(Activator.RepositoryLocator.CatalogueRepository); var lmd = _processTask.LoadMetadata; var argsDictionary = new LoadArgsDictionary(lmd, new HICDatabaseConfiguration(lmd).DeployInfo); //populate the UI with the args _runtimeTask = (ExecutableRuntimeTask)factory.Create(_processTask, argsDictionary.LoadArgs[_processTask.LoadStage]); tbExeCommand.Text = _runtimeTask.ExeFilepath + " " + _runtimeTask.CreateArgString(); return(_runtimeTask); }
public void TestCreateArgString() { const string db = "my-db"; var customArgs = new List <SpontaneouslyInventedArgument>(); customArgs.Add(new SpontaneouslyInventedArgument(new MemoryRepository(), "DatabaseName", db)); var processTask = Mock.Of <IProcessTask>(); var task = new ExecutableRuntimeTask(processTask, new RuntimeArgumentCollection(customArgs.ToArray(), null)); var argString = task.CreateArgString(); var expectedArgString = "--database-name=" + db; Assert.AreEqual(expectedArgString, argString); }
public void TestConstructionFromProcessTaskUsingDatabase() { const string expectedPath = @"\\a\fake\path.exe"; var loadMetadata = new LoadMetadata(CatalogueRepository); var processTask = new ProcessTask(CatalogueRepository, loadMetadata, LoadStage.Mounting) { Name = "Test process task", Path = expectedPath }; processTask.SaveToDatabase(); var argument = new ProcessTaskArgument(CatalogueRepository, processTask) { Name = "DatabaseName", Value = @"Foo_STAGING" }; argument.SaveToDatabase(); try { var args = new RuntimeArgumentCollection(processTask.ProcessTaskArguments.Cast <IArgument>().ToArray(), null); var runtimeTask = new ExecutableRuntimeTask(processTask, args); Assert.AreEqual(expectedPath, runtimeTask.ExeFilepath); Assert.AreEqual(1, runtimeTask.RuntimeArguments.GetAllArgumentsOfType <string>().Count()); var dictionaryOfStringArguments = runtimeTask.RuntimeArguments.GetAllArgumentsOfType <string>().ToDictionary(kvp => kvp.Key, kvp => kvp.Value); Assert.IsNotNull(dictionaryOfStringArguments["DatabaseName"]); Assert.AreEqual("Foo_STAGING", dictionaryOfStringArguments["DatabaseName"]); } finally { loadMetadata.DeleteInDatabase(); } }