public OperationResult <Guid?> CreateProcessMacro(ProcessMacroEditDto dto) { //Validazione argomenti if (dto == null) { throw new ArgumentNullException(nameof(dto)); } //Dichiaro la lista di risultati di ritorno IList <ValidationResult> vResults = new List <ValidationResult>(); //Definisco l'entità ProcessMacro entity = new ProcessMacro(); entity.Name = dto.Name; entity.Value = dto.Value; entity.Process = dto.Process.HasValue ? _processRepository.Load(dto.Process) : null; //Eseguo la validazione logica vResults = ValidateEntity(entity); if (!vResults.Any()) { //Salvataggio su db _processMacroRepository.Save(entity); } //Ritorno i risultati return(new OperationResult <Guid?> { ReturnedValue = entity.Id, ValidationResults = vResults }); }
public OperationResult <Guid?> DeleteProcessMacro(Guid?id) { //Validazione argomenti if (!id.HasValue) { throw new ArgumentNullException(nameof(id)); } //Dichiaro la listsa di risultati di ritorno IList <ValidationResult> vResults = new List <ValidationResult>(); //Definisco l'entità ProcessMacro entity = _processMacroRepository.Load(id); //Eseguo la validazione logica vResults = ValidateEntity(entity); if (!vResults.Any()) { //Salvataggio su db _processMacroRepository.Delete(entity); } //Ritorno i risultati return(new OperationResult <Guid?> { ReturnedValue = null, ValidationResults = vResults }); }
public void FindTaskLengthTest() { //arrange var testSplits = new List <int>() { 1 }; var totalLength = 5; //act var taskLength = ProcessMacro.FindTaskLength(testSplits, totalLength); //assert Assert.AreEqual(4, taskLength); }
public void FindCommandSplitsTest() { //arange var processMacro = new ProcessMacro(); var currentFile = new CommonFunctions.FileHandling(); string filepath = AppDomain.CurrentDomain.BaseDirectory + "\\macrotest.demcr"; int lengthExpected = 4; //act var rawData = currentFile.ReadFile(filepath); var splits = processMacro.FindCommandSplits(rawData); //assert Assert.AreEqual(lengthExpected, splits.Count); }
public void ExtractTaskTypeTest() { //arrange var processMacro = new ProcessMacro(); var currentFile = new CommonFunctions.FileHandling(); string filepath = AppDomain.CurrentDomain.BaseDirectory + "\\Absolute APT X 10, 10, 10.demcr"; //act //get initial tasks var rawData = currentFile.ReadFile(filepath); var splits = processMacro.FindCommandSplits(rawData); var listofTasks = ProcessMacro.SplitTasks(rawData, splits); //apply macro string type = processMacro.ExtractTaskType(listofTasks[0]); string expected = "Move Absolute"; //assert Assert.AreEqual(expected, type); }
public void SplitTasksTest() { //arange var processMacro = new ProcessMacro(); var currentFile = new CommonFunctions.FileHandling(); string filepath = AppDomain.CurrentDomain.BaseDirectory + "\\Absolute APT X 10, 10, 10.demcr"; string filepathFirstLine = AppDomain.CurrentDomain.BaseDirectory + "\\firstline.demcr"; //act var rawData = currentFile.ReadFile(filepath); string firstLine = currentFile.ReadFileSingleLine(filepathFirstLine); var splits = processMacro.FindCommandSplits(rawData); var listofTasks = ProcessMacro.SplitTasks(rawData, splits); string expected = firstLine.Substring(0, 10); string actual = listofTasks[0]; actual = actual.Substring(0, 10); //assert Assert.AreEqual(expected, actual); }