public Boolean UpdateScriptSequenceOrder(String sequenceScriptId, int position)
        {
            SequenceScript sequenceScript = _context.SequenceScripts.SingleOrDefault(ss => ss.ExternalId == sequenceScriptId);

            if (sequenceScript != null)
            {
                sequenceScript.Position = position;

                try
                {
                    Save();

                    return(true);
                }
                catch (Exception ex)
                {
                    _log.Error("UpdateScriptOrder(" + sequenceScriptId + ", " + position + "): Error updating sequence script", ex);

                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
        public Boolean Update(String sequenceScriptId, String name, String content)
        {
            SequenceScript sequenceScript = _context.SequenceScripts.SingleOrDefault(ss => ss.ExternalId == sequenceScriptId);

            if (sequenceScript != null)
            {
                sequenceScript.Name    = name;
                sequenceScript.Content = content;

                try
                {
                    Save();

                    return(true);
                }
                catch (Exception ex)
                {
                    _log.Error("Update(" + sequenceScriptId + "): Error updating a sequence script", ex);

                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
        public Boolean Delete(String sequenceScriptId)
        {
            SequenceScript sequenceScript = _context.SequenceScripts.SingleOrDefault(ss => ss.ExternalId == sequenceScriptId);

            if (sequenceScript != null)
            {
                _context.SequenceScripts.Remove(sequenceScript);

                try
                {
                    Save();

                    return(true);
                }
                catch (Exception ex)
                {
                    _log.Error("Delete(" + sequenceScriptId + "): Error deleting a sequence script", ex);

                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 4
0
        public Task InsertSequenceScriptTask(String sequenceScriptId)
        {
            SequenceScript sequenceScript = _sequenceScriptDataAccess.Get(sequenceScriptId);

            if (sequenceScript != null)
            {
                Task task = new Task();
                task.ExternalId = System.Guid.NewGuid().ToString();
                task.Project    = sequenceScript.Sequence.Project;
                task.ParentId   = sequenceScript.ID;
                task.ParentType = ItemType.SequenceScript;
                task.Name       = sequenceScript.Name;
                task.Status     = Status.Unprocessed;
                task.Created    = DateTime.UtcNow;

                task = _taskDataAccess.Insert(task);

                TaskScript taskScript = new TaskScript();
                taskScript.Task     = task;
                taskScript.Type     = sequenceScript.Type;
                taskScript.Content  = sequenceScript.Content;
                taskScript.Position = 1;

                _taskScriptDataAccess.Insert(taskScript);

                return(task);
            }
            else
            {
                _log.Info("InsertSequenceScriptTask(" + sequenceScriptId + "): Unable to find sequence script");

                return(null);
            }
        }
Ejemplo n.º 5
0
        public ActionResult UpdateSequencedScript(String id, FormCollection formCollection)
        {
            SequenceScript sequenceScript = _sequenceScriptService.GetSequenceScript(id);

            String sequenceId = sequenceScript.Sequence.ExternalId;
            String projectId  = sequenceScript.Sequence.Project.ExternalId;

            switch (formCollection["Type"].ToString().Trim().ToLower())
            {
            case "git":
                Dictionary <String, String> gitAuthentication = new Dictionary <String, String>();
                gitAuthentication.Add("Location", formCollection["Location"]);
                gitAuthentication.Add("Username", formCollection["Username"]);
                gitAuthentication.Add("Password", formCollection["Password"]);

                _sequenceScriptService.UpdateSequenceScript(id, formCollection["SequenceScript.Name"], JsonConvert.SerializeObject(gitAuthentication, new KeyValuePairConverter()));
                break;

            case "batch":
            case "node":
            case "grunt":
            case "phantomjs":
            case "casperjs":
                _sequenceScriptService.UpdateSequenceScript(id, formCollection["SequenceScript.Name"], formCollection["Content"]);
                break;
            }

            return(RedirectToAction("Index/" + projectId + "/" + sequenceId, "Sequences"));
        }
Ejemplo n.º 6
0
        private void BuildSequenceScripts()
        {
            SequenceScript sequenceScript1 = new SequenceScript();

            sequenceScript1.ID         = 1;
            sequenceScript1.ExternalId = "0cec8cba-3249-44e6-96bb-ff49ac31cdde";
            sequenceScript1.Position   = 1;
            sequenceScript1.Sequence   = Sequences.SingleOrDefault(s => s.ID == 1);
            sequenceScript1.Name       = "Test Sequence Script 1";
            sequenceScript1.Content    = "Test script with parameter 1";

            SequenceScripts.Add(sequenceScript1);

            SequenceScript sequenceScript2 = new SequenceScript();

            sequenceScript2.ID         = 2;
            sequenceScript2.ExternalId = "d3094a43-b05d-4b3f-8031-50d082239ea3";
            sequenceScript2.Position   = 2;
            sequenceScript2.Sequence   = Sequences.SingleOrDefault(s => s.ID == 1);
            sequenceScript2.Name       = "Test Sequence Script 2";
            sequenceScript2.Content    = "Test script with parameter 2";


            SequenceScripts.Add(sequenceScript2);
        }
        public void GetSequenceScript()
        {
            SequenceScript sequenceScript = _sequenceScriptService.GetSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde");

            Assert.IsNotNull(sequenceScript);
            Assert.AreEqual("Test Sequence Script 1", sequenceScript.Name);

            SequenceScript failingSequenceScript = _sequenceScriptService.GetSequenceScript("90");

            Assert.IsNull(failingSequenceScript);
        }
Ejemplo n.º 8
0
        public ActionResult RunSequencedScript(String id)
        {
            SequenceScript sequenceScript = _sequenceScriptService.GetSequenceScript(id);

            String sequenceId = sequenceScript.Sequence.ExternalId;
            String projectId  = sequenceScript.Sequence.Project.ExternalId;

            _taskService.InsertSequenceScriptTask(id);

            return(RedirectToAction("Index/" + projectId + "/" + sequenceId, "Sequences"));
        }
        public void DeleteSequenceScript()
        {
            SequenceScript sequenceScriptBefore = _sequenceScriptService.GetSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde");

            Assert.IsNotNull(sequenceScriptBefore);

            Boolean deleteSuccessful = _sequenceScriptService.DeleteSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde");

            Assert.IsTrue(deleteSuccessful);

            SequenceScript sequenceScriptAfter = _sequenceScriptService.GetSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde");

            Assert.IsNull(sequenceScriptAfter);
        }
        public SequenceScript Insert(SequenceScript sequenceScript)
        {
            try
            {
                _context.SequenceScripts.Add(sequenceScript);
                Save();

                return(sequenceScript);
            }
            catch (Exception ex)
            {
                _log.Error("Insert(): Error inserting new sequence script", ex);

                return(null);
            }
        }
Ejemplo n.º 11
0
        public SequenceScript AddScriptToSequence(String sequenceId, String scriptId, ScriptType scriptType, String scriptName, Dictionary <String, String> parameters)
        {
            Sequence sequence = _sequenceDataAccess.Get(sequenceId);
            Script   script   = _scriptDataAccess.Get(scriptId);

            if ((sequence != null) && (script != null))
            {
                IGhostRunnerScript ghostRunnerScript = ScriptHelper.GetGhostRunnerScript(script);

                int scriptPosition = _sequenceScriptDataAccess.GetNextPosition(sequenceId);
                if (scriptPosition < 1)
                {
                    scriptPosition = 1;
                }

                SequenceScript sequenceScript = new SequenceScript();
                sequenceScript.ExternalId = System.Guid.NewGuid().ToString();
                sequenceScript.Sequence   = sequence;
                sequenceScript.Type       = scriptType;
                sequenceScript.Name       = scriptName;
                sequenceScript.Content    = script.Content;

                foreach (String scriptParameter in ghostRunnerScript.GetAllParameters())
                {
                    String parameterValue = String.Empty;
                    if (parameters.ContainsKey(scriptParameter))
                    {
                        parameterValue = parameters[scriptParameter];
                    }

                    sequenceScript.Content = Regex.Replace(sequenceScript.Content, "\\[\\[" + scriptParameter + "\\]\\]", parameterValue);
                }

                sequenceScript.Position = scriptPosition;

                _sequenceScriptDataAccess.Insert(sequenceScript);

                _sequenceScriptDataAccess.UpdateScriptOrder(sequenceId);

                return(sequenceScript);
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 12
0
        public static IGhostRunnerScript GetGhostRunnerScript(SequenceScript sequenceScript)
        {
            switch (sequenceScript.Type)
            {
            case ScriptType.Git: return(new GitScript(sequenceScript));

            case ScriptType.CommandLine: return(new CommandLineScript(sequenceScript));

            case ScriptType.Node: return(new NodeScript(sequenceScript));

            case ScriptType.Grunt: return(new GruntScript(sequenceScript));

            case ScriptType.PhantomJS: return(new PhantomJSScript(sequenceScript));
            }

            return(null);
        }
Ejemplo n.º 13
0
        public void AddScriptToSequence()
        {
            IList <SequenceScript> sequenceScriptsBefore = _sequenceScriptService.GetAllSequenceScripts("c2f5f76a-1ee7-4f92-9150-55de4cefa76f");

            Assert.AreEqual(2, sequenceScriptsBefore.Count);

            SequenceScript sequenceScript = _sequenceService.AddScriptToSequence("c2f5f76a-1ee7-4f92-9150-55de4cefa76f", "8ebb4cd0-8e36-4778-9b0d-5ba86d9c0cce", ScriptType.Node, "Test Script 1", new Dictionary <String, String>());

            Assert.IsNotNull(sequenceScript);

            SequenceScript failingSequenceScript = _sequenceService.AddScriptToSequence("99", "8ebb4cd0-8e36-4778-9b0d-5ba86d9c0cce", ScriptType.Node, "Test Script 99", new Dictionary <String, String>());

            Assert.IsNull(failingSequenceScript);

            SequenceScript failingAgainSequenceScript = _sequenceService.AddScriptToSequence("c2f5f76a-1ee7-4f92-9150-55de4cefa76f", "99", ScriptType.Node, "Test Script 99", new Dictionary <String, String>());

            Assert.IsNull(failingAgainSequenceScript);
        }
        public void UpdateSequenceScript()
        {
            SequenceScript sequenceScriptBefore = _sequenceScriptService.GetSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde");

            Assert.IsNotNull(sequenceScriptBefore);
            Assert.AreEqual("Test Sequence Script 1", sequenceScriptBefore.Name);
            Assert.AreEqual("Test script with parameter 1", sequenceScriptBefore.Content);

            Boolean updateSuccessful = _sequenceScriptService.UpdateSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde", "Updated Sequence Script 1", "Updated script with parameter 99");

            Assert.IsTrue(updateSuccessful);

            SequenceScript sequenceScriptAfter = _sequenceScriptService.GetSequenceScript("0cec8cba-3249-44e6-96bb-ff49ac31cdde");

            Assert.IsNotNull(sequenceScriptAfter);
            Assert.AreEqual("Updated Sequence Script 1", sequenceScriptAfter.Name);
            Assert.AreEqual("Updated script with parameter 99", sequenceScriptAfter.Content);
        }
Ejemplo n.º 15
0
    //bool orderedByTime = true;


    private void OnEnable()
    {
        sequence = (SequenceScript)target;
    }