public void DsfActivity_ExecuteTool_DoErrorHandling_DataObjectWithNullResourceIDExpression_ShouldError() { var onErrorVar = "[[Errors().Messsage]]"; var mockDataObject = new Mock <IDSFDataObject>(); mockDataObject.Setup(o => o.Environment) .Returns(new ExecutionEnvironment()); mockDataObject.Setup(o => o.ServerID) .Returns(Guid.NewGuid()); mockDataObject.Setup(o => o.IsDebug) .Returns(true); mockDataObject.Setup(o => o.ForEachUpdateValue) .Returns(1); mockDataObject.Setup(o => o.EsbChannel) .Returns(new Mock <IEsbChannel>().Object); var dataObject = mockDataObject.Object; dataObject.Environment.AddError("error one"); dataObject.Environment.AddError("error one"); dataObject.Environment.AddError("error two"); dataObject.Environment.AllErrors.Add("error two"); //AllErrors - seem to be used as main errors dataObject.Environment.Errors.Add(GlobalConstants.InnerErrorTag + "error two" + GlobalConstants.InnerErrorTagEnd); //Errors - seem to be used as Inner errors dataObject.Environment.Errors.Add(GlobalConstants.InnerErrorTag + "error three" + GlobalConstants.InnerErrorTagEnd); //Errors - seem to be used as Inner errors dataObject.Environment.Errors.Add(GlobalConstants.InnerErrorTag + "error three" + GlobalConstants.InnerErrorTagEnd); //Errors - seem to be used as Inner errors var originalGuid = Guid.NewGuid(); var act = new DsfActivity { UniqueID = originalGuid.ToString(), OnErrorVariable = onErrorVar, ResourceID = new InArgument <Guid> { Expression = null } }; act.Execute(dataObject, 0); var env = dataObject.Environment; var onErrorMessageEvaluated = env.Eval("[[Errors(*).Messsage]]", 0) as CommonFunctions.WarewolfEvalResult.WarewolfAtomListresult; Assert.IsTrue(dataObject.Environment.HasErrors()); Assert.IsNotNull(onErrorMessageEvaluated); var errorMessage1 = onErrorMessageEvaluated.Item[0].ToString(); var errorMessage2 = onErrorMessageEvaluated.Item[1].ToString(); Assert.AreNotEqual("error twoerror three", errorMessage1, "Not sure why we would have our error printed this way"); Assert.AreEqual("error two", errorMessage1); Assert.AreEqual("error three", errorMessage2); }
public void DsfActivity_ExecuteTool_DataObjectWithNullChannel_ShouldError() { var dataObject = new DsfDataObject(CurrentDl, Guid.NewGuid()) { ServerID = Guid.NewGuid(), IsDebug = true, ForEachNestingLevel = 1 }; var act = new DsfActivity(); var originalGuid = Guid.NewGuid(); act.UniqueID = originalGuid.ToString(); act.Execute(dataObject, 0); Assert.IsTrue(dataObject.Environment.HasErrors()); }