public void AddModel_KeyIsAlreadyPresent_ReturnsLastObject()
        {
            // arrange
            var workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var sut = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);

            sut.AddModel("key", "value1");
            sut.AddModel("key", "value2");

            // act
            var result = sut.GetModel("key");

            // assert
            Assert.That(result, Is.EqualTo("value2"));
        }
        public void GetModel_ObjectsSet_ReturnsDictionary()
        {
            // arrange
            var workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var sut = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);

            sut.AddModel("key1", "value1");
            sut.AddModel("key2", "value2");

            // act
            var result = sut.GetModel();

            // assert
            Assert.That(result, Is.EquivalentTo(
                            new Dictionary <string, object>
            {
                { "key1", "value1" },
                { "key2", "value2" }
            }
                            ));
        }
        public void AddModel_KeyIsInvalid_ThrowsException(string key)
        {
            // arrange
            var    workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var    sut       = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);
            Action sutAction = () => sut.AddModel(key, "value");

            // act, assert
            var ex = Assert.Throws <ArgumentException>(new TestDelegate(sutAction));

            Assert.That(ex.ParamName, Is.EqualTo("key"));
        }
        public void RemoveModel_ObjectIsPresent_ReturnsTrue()
        {
            // arrange
            var workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var sut = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);

            sut.AddModel("key", "value");

            // act
            var result = sut.RemoveModel("key");

            // assert
            Assert.That(result, Is.True);
        }
        public void RemoveModel_KeyIsInvalid_ReturnsFalse(string key)
        {
            // arrange
            var workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var sut = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);

            sut.AddModel("key", "value");

            // act
            var result = sut.RemoveModel(key);

            // assert
            Assert.That(result, Is.False);
        }
        public void RemoveModel_ObjectIsPresent_RemovesObject()
        {
            // arrange
            var workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var sut = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);

            sut.AddModel("key", "value");

            // act
            sut.RemoveModel("key");
            var exists = sut.ModelContains("key");

            // assert
            Assert.That(exists, Is.False);
        }
        public void GetModelByKey_ObjectIsPresent_ReturnsObject()
        {
            // arrange
            var workflowPipelineArgs = WorkflowPipelineArgsFactory.CreateWorkflowPipelineArgs();
            var sut   = new PopulateScribanMailActionModelArgs(workflowPipelineArgs);
            var value = new Tuple <string, int, DateTime>("item1", 42, DateTime.Today);

            sut.AddModel("key", value);

            // act
            var result = sut.GetModel("key");

            // assert
            Assert.That(result, Is.EqualTo(value));
        }
Пример #8
0
 public void Process(PopulateScribanMailActionModelArgs args)
 {
     args.AddModel(ModelKey, args.WorkflowPipelineArgs.DataItem);
 }
Пример #9
0
        public void Process(PopulateScribanMailActionModelArgs args)
        {
            var state = args.WorkflowPipelineArgs.DataItem.State.GetWorkflowState();

            args.AddModel(ModelKey, state);
        }