protected override void BuildDataList() { List<Tuple<string, string>> variableList; ScenarioContext.Current.TryGetValue("variableList", out variableList); if(variableList == null) { variableList = new List<Tuple<string, string>>(); ScenarioContext.Current.Add("variableList", variableList); } variableList.Add(new Tuple<string, string>(ResultVariable, "")); BuildShapeAndTestData(); string scriptToExecute; ScenarioContext.Current.TryGetValue("scriptToExecute", out scriptToExecute); enScriptType language; ScenarioContext.Current.TryGetValue("language", out language); var dsfScripting = new DsfScriptingActivity { Script = scriptToExecute, ScriptType = language, Result = ResultVariable }; TestStartNode = new FlowStep { Action = dsfScripting }; ScenarioContext.Current.Add("activity", dsfScripting); }
protected override void BuildDataList() { List <Tuple <string, string> > variableList; ScenarioContext.Current.TryGetValue("variableList", out variableList); if (variableList == null) { variableList = new List <Tuple <string, string> >(); ScenarioContext.Current.Add("variableList", variableList); } variableList.Add(new Tuple <string, string>(ResultVariable, "")); BuildShapeAndTestData(); string scriptToExecute; ScenarioContext.Current.TryGetValue("scriptToExecute", out scriptToExecute); enScriptType language; ScenarioContext.Current.TryGetValue("language", out language); var dsfScripting = new DsfScriptingActivity { Script = scriptToExecute, ScriptType = language, Result = ResultVariable }; TestStartNode = new FlowStep { Action = dsfScripting }; ScenarioContext.Current.Add("activity", dsfScripting); }
public void DsfScriptingActivity_GetState_ReturnsStateVariable() { //---------------Set up test pack------------------- //------------Setup for test-------------------------- var act = new DsfScriptingActivity { Script = "def add", EscapeScript = true, IncludeFile = "temp.py", Result = "[[res]]" }; //------------Execute Test--------------------------- var stateItems = act.GetState(); Assert.AreEqual(4, stateItems.Count()); var expectedResults = new[] { new StateVariable { Name = "Script", Type = StateVariable.StateType.Input, Value = "def add" }, new StateVariable { Name = "IncludeFile", Type = StateVariable.StateType.Input, Value = "temp.py" }, new StateVariable { Name = "EscapeScript", Type = StateVariable.StateType.Input, Value = "True" }, new StateVariable { Name = "Result", Type = StateVariable.StateType.Output, Value = "[[res]]" } }; var iter = act.GetState().Select( (item, index) => new { value = item, expectValue = expectedResults[index] } ); //------------Assert Results------------------------- foreach (var entry in iter) { Assert.AreEqual(entry.expectValue.Name, entry.value.Name); Assert.AreEqual(entry.expectValue.Type, entry.value.Type); Assert.AreEqual(entry.expectValue.Value, entry.value.Value); } }
public void GivenFunctionNotInExternalFile_Execute_Pythonscript_ShouldNotExecuteFunction() { var activity = new DsfScriptingActivity(); Assert.IsNotNull(activity); activity.Script = "return \"someValue\".endsWith(\"e\")"; activity.ScriptType = enScriptType.Python; activity.Execute(DataObject, 0); Assert.AreEqual(1, DataObject.Environment.Errors.Count); }
public void GivenExternalFile_Execute_Javascript_ShouldExecuteExternalFunction() { var activity = new DsfScriptingActivity(); Assert.IsNotNull(activity); activity.IncludeFile = GetJsTmpFile(); activity.Script = "return \"someValue\".endsWith(\"e\")"; activity.ScriptType = enScriptType.JavaScript; activity.Execute(DataObject, 0); Assert.AreEqual(0, DataObject.Environment.Errors.Count); }
public void GivenExternalFile_Execute_Pythonscript_ShouldExecuteExternalFunction() { var activity = new DsfScriptingActivity(); Assert.IsNotNull(activity); activity.IncludeFile = GetPyTmpFile(); activity.Script = "return GreaterThanFive(10)"; activity.ScriptType = enScriptType.Python; activity.Execute(DataObject, 0); Assert.AreEqual(0, DataObject.Environment.Errors.Count); }
public void DsfScriptingActivity_ShouldReturnResults() { var activity = new DsfScriptingActivity(); Assert.IsNotNull(activity); activity.IncludeFile = GetJsTmpFile(); activity.Script = "return \"someValue\".endsWith(\"e\")"; activity.ScriptType = enScriptType.JavaScript; activity.Execute(DataObject, 0); Assert.AreEqual(0, DataObject.Environment.Errors.Count); var debugOutputs = activity.GetForEachOutputs(); Assert.IsNotNull(debugOutputs); }
public void DsfScriptingActivity_GivenInvalidScript_SholdReturnException() { var activity = new DsfScriptingActivity(); Assert.IsNotNull(activity); activity.IncludeFile = GetJsTmpFile(); activity.Script = "return \"someValue\".endsWith(\"e\")"; activity.ScriptType = enScriptType.JavaScript; activity.Execute(DataObject, 0); Assert.AreEqual(0, DataObject.Environment.Errors.Count); var debugInputs = activity.GetDebugInputs(DataObject.Environment, 0); Assert.IsNotNull(debugInputs); }
public void UniqueIDDifferent_EmptyCountRecordset_Object_Is_Equal() { //---------------Set up test pack------------------- var dsfScriptingActivity = new DsfScriptingActivity(); var javascriptActivity = new DsfScriptingActivity(); //---------------Assert Precondition---------------- Assert.IsNotNull(dsfScriptingActivity); //---------------Execute Test ---------------------- var @equals = dsfScriptingActivity.Equals(javascriptActivity); //---------------Test Result ----------------------- Assert.IsFalse(@equals); }
public void GetOutputs_Called_ShouldReturnListWithResultValueInIt() { //------------Setup for test-------------------------- var act = new DsfScriptingActivity { IncludeFile = GetJsTmpFile(), Script = "return \"someValue\".endsWith(\"e\")", ScriptType = enScriptType.JavaScript, Result = "[[scrRes]]" }; //------------Execute Test--------------------------- var outputs = act.GetOutputs(); //------------Assert Results------------------------- Assert.AreEqual(1, outputs.Count); Assert.AreEqual("[[scrRes]]", outputs[0]); }
public void DsfScriptingActivity_GivenInvalidScript_SholdUpdateForEachInputs() { var activity = new DsfScriptingActivity(); Assert.IsNotNull(activity); activity.IncludeFile = GetJsTmpFile(); const string script = "return \"someValue\".endsWith(\"e\")"; activity.Script = script; activity.ScriptType = enScriptType.JavaScript; activity.Execute(DataObject, 0); var tuple1 = new Tuple <string, string>(script, "Test"); activity.UpdateForEachInputs(new List <Tuple <string, string> > { tuple1 }); Assert.AreEqual(enScriptType.JavaScript, activity.ScriptType); }
public void IncludeFile_Same_Object_IsEqual() { //---------------Set up test pack------------------- var uniqueId = Guid.NewGuid().ToString(); var javascriptActivity = new DsfScriptingActivity() { UniqueID = uniqueId, IncludeFile = "a" }; var dsfScriptingActivity = new DsfScriptingActivity() { UniqueID = uniqueId, IncludeFile = "a" }; //---------------Assert Precondition---------------- Assert.IsNotNull(javascriptActivity); //---------------Execute Test ---------------------- var @equals = javascriptActivity.Equals(dsfScriptingActivity); //---------------Test Result ----------------------- Assert.IsTrue(@equals); }
public void UniqueIDEquals_EmptyJavascript_Object_IsEqual() { //---------------Set up test pack------------------- var uniqueId = Guid.NewGuid().ToString(); var dsfScriptingActivity = new DsfScriptingActivity() { UniqueID = uniqueId }; var javascriptActivity = new DsfScriptingActivity() { UniqueID = uniqueId }; //---------------Assert Precondition---------------- Assert.IsNotNull(dsfScriptingActivity); //---------------Execute Test ---------------------- var @equals = dsfScriptingActivity.Equals(javascriptActivity); //---------------Test Result ----------------------- Assert.IsTrue(@equals); }
public void Equals_Given_Different_Object_Is_Not_Equal() { //---------------Set up test pack------------------- var uniqueId = Guid.NewGuid().ToString(); var javascriptActivity = new DsfScriptingActivity() { UniqueID = uniqueId, DisplayName = "A" }; var dsfScriptingActivity = new DsfScriptingActivity() { UniqueID = uniqueId, DisplayName = "ass" }; //---------------Assert Precondition---------------- Assert.IsNotNull(javascriptActivity); //---------------Execute Test ---------------------- var @equals = javascriptActivity.Equals(dsfScriptingActivity); //---------------Test Result ----------------------- Assert.IsFalse(@equals); }
public void ScriptType_Different_Object_Is_Not_Equal() { //---------------Set up test pack------------------- var uniqueId = Guid.NewGuid().ToString(); var javascriptActivity = new DsfScriptingActivity() { UniqueID = uniqueId, ScriptType = enScriptType.JavaScript }; var dsfScriptingActivity = new DsfScriptingActivity() { UniqueID = uniqueId, ScriptType = enScriptType.Python }; //---------------Assert Precondition---------------- Assert.IsNotNull(javascriptActivity); //---------------Execute Test ---------------------- var @equals = javascriptActivity.Equals(dsfScriptingActivity); //---------------Test Result ----------------------- Assert.IsFalse(@equals); }
public void IncludeFile_Different_Object_Is_Not_Equal_CaseSensitive() { //---------------Set up test pack------------------- var uniqueId = Guid.NewGuid().ToString(); var javascriptActivity = new DsfScriptingActivity() { UniqueID = uniqueId, IncludeFile = "AAA" }; var dsfScriptingActivity = new DsfScriptingActivity() { UniqueID = uniqueId, IncludeFile = "aaa" }; //---------------Assert Precondition---------------- Assert.IsNotNull(javascriptActivity); //---------------Execute Test ---------------------- var @equals = javascriptActivity.Equals(dsfScriptingActivity); //---------------Test Result ----------------------- Assert.IsFalse(@equals); }
public void EscapeScript_Same_Object_Is_Equal() { //---------------Set up test pack------------------- var uniqueId = Guid.NewGuid().ToString(); var javascriptActivity = new DsfScriptingActivity() { UniqueID = uniqueId, EscapeScript = true }; var dsfScriptingActivity = new DsfScriptingActivity() { UniqueID = uniqueId, EscapeScript = false }; //---------------Assert Precondition---------------- Assert.IsFalse(javascriptActivity.Equals(dsfScriptingActivity)); //---------------Execute Test ---------------------- javascriptActivity.EscapeScript = true; dsfScriptingActivity.EscapeScript = true; var @equals = javascriptActivity.Equals(dsfScriptingActivity); //---------------Test Result ----------------------- Assert.IsTrue(@equals); }
protected override void BuildDataList() { scenarioContext.TryGetValue("variableList", out List <Tuple <string, string> > variableList); if (variableList == null) { variableList = new List <Tuple <string, string> >(); scenarioContext.Add("variableList", variableList); } variableList.Add(new Tuple <string, string>(ResultVariable, "")); BuildShapeAndTestData(); scenarioContext.TryGetValue("scriptToExecute", out string scriptToExecute); scenarioContext.TryGetValue("language", out enScriptType language); scenarioContext.TryGetValue("javascript", out DsfJavascriptActivity javascriptActivity); if (javascriptActivity != null) { javascriptActivity.Script = scriptToExecute; javascriptActivity.Result = ResultVariable; TestStartNode = new FlowStep { Action = javascriptActivity }; scenarioContext.Add("activity", javascriptActivity); return; } _featureContext.TryGetValue("pythonActivity", out DsfPythonActivity pythonActivity); if (pythonActivity != null) { pythonActivity.Script = scriptToExecute; pythonActivity.Result = ResultVariable; TestStartNode = new FlowStep { Action = pythonActivity }; scenarioContext.Add("activity", pythonActivity); return; } _featureContext.TryGetValue("rubyActivity", out DsfRubyActivity rubyActivity); if (rubyActivity != null) { rubyActivity.Script = scriptToExecute; rubyActivity.Result = ResultVariable; TestStartNode = new FlowStep { Action = rubyActivity }; scenarioContext.Add("activity", rubyActivity); return; } var dsfScripting = new DsfScriptingActivity { Script = scriptToExecute, ScriptType = language, Result = ResultVariable }; TestStartNode = new FlowStep { Action = dsfScripting }; scenarioContext.Add("activity", dsfScripting); }