示例#1
0
        public void DsfActivity_GetDebugInputs_WhenListInput_DebugInputExists()
        {
            //------------Setup for test--------------------------
            var environmentID = Guid.Empty;
            var env           = new ExecutionEnvironment();
            var dataObject    = new DsfDataObject(CurrentDl, ExecutionId)
            {
                ServerID                 = Guid.NewGuid(),
                ExecutingUser            = User,
                IsDebug                  = true,
                EnvironmentID            = environmentID,
                Environment              = env,
                IsRemoteInvokeOverridden = false,
                DataList                 = new StringBuilder(CurrentDl),
                IsServiceTestExecution   = true
            };

            env.Assign("[[list().Name]]", "bob", 0);
            //------------Execute Test---------------------------
            var act = new DsfActivity
            {
                Inputs = new List <IServiceInput>
                {
                    new ServiceInput("Input1", "[[list(*).Name]]")
                }
            };
            var inputs = act.GetDebugInputs(env, 0);

            //------------Assert Results-------------------------
            Assert.AreEqual(1, inputs.Count);
            Assert.AreEqual("bob", inputs[0].ResultsList[0].Value);
        }
示例#2
0
        public void DsfActivity_GetDebugInputs_ServiceInputIsAtomListResult()
        {
            //------------Setup for test--------------------------
            var inputs = new List <IServiceInput>();
            var input  = new Mock <IServiceInput>();

            input.SetupGet(o => o.Value).Returns("[[theList(*).Name]]");
            inputs.Add(input.Object);
            var act = new DsfActivity
            {
                InputMapping  = ActivityStrings.DsfActivityInputMapping,
                Inputs        = inputs,
                OutputMapping = ActivityStrings.DsfActivityOutputMapping,
                ResourceID    = null,
                IsObject      = true,
                ObjectName    = "Obj",
                ObjectResult  = "{Name:BOb}"
            };

            var env = new ExecutionEnvironment();

            env.AssignStrict("[[theList().Name]]", "Albert", 0);
            env.AssignStrict("[[theList().Name]]", "Bob", 0);
            //------------Execute Test---------------------------
            var outputs = act.GetDebugInputs(env, 0);

            //------------Assert Results-------------------------
            Assert.AreEqual(1, outputs.Count);
            Assert.AreEqual("Albert", outputs[0].ResultsList[0].Value);
            Assert.AreEqual(false, outputs[0].ResultsList[0].HasError);
            Assert.AreEqual("Bob", outputs[0].ResultsList[1].Value);
            Assert.AreEqual(false, outputs[0].ResultsList[1].HasError);
        }
示例#3
0
        public void DsfActivity_GetDebugInputs_ThrowsErrorIfUnableToParse()
        {
            //------------Setup for test--------------------------
            var         resourceID = Guid.NewGuid();
            DsfActivity act        = new DsfActivity {
                InputMapping = ActivityStrings.DsfActivityInputMapping, OutputMapping = ActivityStrings.DsfActivityOutputMapping, ResourceID = new InArgument <Guid>(resourceID)
            };
            var mockAutorizationService = new Mock <IAuthorizationService>();

            mockAutorizationService.Setup(service => service.IsAuthorized(It.IsAny <IPrincipal>(), AuthorizationContext.Execute, resourceID.ToString())).Returns(true);
            act.AuthorizationService = mockAutorizationService.Object;
            var compiler = new Mock <IDataListCompiler>();
            var parser   = new Mock <IDev2LanguageParser>();
            var inp1     = new Mock <IDev2Definition>();
            var inp2     = new Mock <IDev2Definition>();

            parser.Setup(a => a.Parse(It.IsAny <string>())).Returns(new List <IDev2Definition> {
                inp1.Object, inp2.Object
            });

            var errors = new ErrorResultTO();

            errors.AddError("bob");
            compiler.Setup(a => a.Evaluate(It.IsAny <Guid>(), Dev2.DataList.Contract.enActionType.User, It.IsAny <string>(), false, out errors));
            //------------Execute Test---------------------------
            var dl   = new Mock <IBinaryDataList>();
            var guid = Guid.NewGuid();

            dl.Setup(a => a.UID).Returns(guid);
            try
            {
                act.GetDebugInputs(dl.Object, compiler.Object, parser.Object);
            }
            catch (Exception err)
            {
                Assert.IsTrue(err.Message.Contains("bob"));
                throw;
            }
        }
示例#4
0
        public void DsfActivity_GetDebugInputs_ServiceInputIsEmpty()
        {
            //------------Setup for test--------------------------
            var inputs = new List <IServiceInput>();

            inputs.Add(new Mock <IServiceInput>().Object);
            var act = new DsfActivity
            {
                InputMapping  = ActivityStrings.DsfActivityInputMapping,
                Inputs        = inputs,
                OutputMapping = ActivityStrings.DsfActivityOutputMapping,
                ResourceID    = null,
                IsObject      = true,
                ObjectName    = "Obj",
                ObjectResult  = "{Name:BOb}"
            };

            var env = new ExecutionEnvironment();
            //------------Execute Test---------------------------
            var outputs = act.GetDebugInputs(env, 0);

            //------------Assert Results-------------------------
            Assert.AreEqual(0, outputs.Count);
        }