コード例 #1
0
        public void OnlyOneExpressionPerArgument( )
        {
            var wf = new Workflow
            {
                Name = "wf" + DateTime.Now
            };
            var logging = (new LogActivity
            {
                Name = "log" + DateTime.Now
            }).As <WfActivity>( );

            wf.FirstActivity = logging;
            wf.ContainedActivities.Add(logging);

            ActivityTestHelper.AddExpressionToActivityArgument(wf, logging, "Message", "'First expression'", false);
            ActivityTestHelper.AddExpressionToActivityArgument(wf, logging, "Message", "'Second expression'", false);

            wf.Save( );
            ToDelete.Add(wf.Id);

            var messages = wf.Validate();

            Assert.Greater(messages.Count(), 0, "There are error messages");
            Assert.IsTrue(messages.Any(m => m.Contains("An expression has more than one argument to populate.")));
        }
コード例 #2
0
        public void EnsureWorkflowCanSaveTwice( )
        {
            Workflow wf = CreateLoggingWorkflow("EnsureWorkflowCanSaveTwice");

            wf.Save( );
            ToDelete.Add(wf.Id);

            var wf2 = Entity.Get <Workflow>(wf.Id, true);

            wf2.Save();

            var wf3 = Entity.Get <Workflow>(wf.Id, true);

            ActivityTestHelper.AddVariableToWorkflow(wf3, (new StringArgument()
            {
                Name = "bob"
            }).As <ActivityArgument>());
            ActivityTestHelper.AddMissingExpressionParametersToWorkflow(wf3);
            wf3.Save();
        }