public void DsfMultiAssignActivity_GetState_Returns_Input_And_Outputs()
        {
            //------------Setup for test--------------------------
            var fieldsCollection = new List <ActivityDTO>
            {
                new ActivityDTO("[[rs(*).val]]", "[[result]]", 1),
            };
            var act = new DsfMultiAssignActivity {
                FieldsCollection = fieldsCollection
            };
            //------------Execute Test---------------------------
            var expectedResults = new[]
            {
                new StateVariable
                {
                    Name  = "Fields Collection",
                    Type  = StateVariable.StateType.InputOutput,
                    Value = ActivityHelper.GetSerializedStateValueFromCollection(fieldsCollection)
                }
            };
            var listItems = act.GetState();

            Assert.AreEqual(1, listItems.Count());
            var iter = listItems.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);
            }
        }