Beispiel #1
0
        public void FieldsCollectionSame_EmptyAssigns_IsNotEqual_CaseSensitive()
        {
            //---------------Set up test pack-------------------
            var uniqueId    = Guid.NewGuid().ToString();
            var multiAssign = new DsfMultiAssignObjectActivity()
            {
                UniqueID         = uniqueId,
                FieldsCollection = new List <AssignObjectDTO>()
                {
                    new AssignObjectDTO("A", "a", 1)
                }
            };
            var multiAssign1 = new DsfMultiAssignObjectActivity()
            {
                UniqueID         = uniqueId,
                FieldsCollection = new List <AssignObjectDTO>()
                {
                    new AssignObjectDTO("a", "a", 1)
                }
            };

            //---------------Assert Precondition----------------
            Assert.IsNotNull(multiAssign);
            //---------------Execute Test ----------------------
            var equals = multiAssign.Equals(multiAssign1);

            //---------------Test Result -----------------------
            Assert.IsFalse(equals);
        }
Beispiel #2
0
        public void CreateBookmark_Same_Object_Is_Not_Equal()
        {
            //---------------Set up test pack-------------------
            var uniqueId    = Guid.NewGuid().ToString();
            var multiAssign = new DsfMultiAssignObjectActivity()
            {
                UniqueID         = uniqueId,
                FieldsCollection = new List <AssignObjectDTO>()
                {
                    new AssignObjectDTO("a", "a", 1)
                },
                CreateBookmark = false
            };
            var multiAssign1 = new DsfMultiAssignObjectActivity()
            {
                UniqueID         = uniqueId,
                FieldsCollection = new List <AssignObjectDTO>()
                {
                    new AssignObjectDTO("a", "a", 1)
                },
                CreateBookmark = false
            };

            //---------------Assert Precondition----------------
            Assert.IsTrue(multiAssign.Equals(multiAssign1));
            //---------------Execute Test ----------------------
            multiAssign.CreateBookmark = true;
            var equals = multiAssign.Equals(multiAssign1);

            //---------------Test Result -----------------------
            Assert.IsFalse(equals);
        }
Beispiel #3
0
        public void UpdateAllOccurrences_Same_Object_Is_Equal()
        {
            //---------------Set up test pack-------------------
            var uniqueId    = Guid.NewGuid().ToString();
            var multiAssign = new DsfMultiAssignObjectActivity()
            {
                UniqueID         = uniqueId,
                FieldsCollection = new List <AssignObjectDTO>()
                {
                    new AssignObjectDTO("a", "a", 1)
                }
            };
            var multiAssign1 = new DsfMultiAssignObjectActivity()
            {
                UniqueID         = uniqueId,
                FieldsCollection = new List <AssignObjectDTO>()
                {
                    new AssignObjectDTO("a", "a", 1)
                }
            };

            //---------------Assert Precondition----------------
            Assert.IsTrue(multiAssign.Equals(multiAssign1));
            //---------------Execute Test ----------------------
            multiAssign.UpdateAllOccurrences  = true;
            multiAssign1.UpdateAllOccurrences = true;
            var equals = multiAssign.Equals(multiAssign1);

            //---------------Test Result -----------------------
            Assert.IsTrue(equals);
        }
        public void DsfMultiAssignObjectActivity_UpdateForEachOutputs_WhenContainsMatchingStar_UpdateSuccessful()
        {
            //------------Setup for test--------------------------
            var fieldsCollection = new List <AssignObjectDTO>
            {
                new AssignObjectDTO("[[@Pet.Owner(1).Name]]", "Bob", 1),
            };

            var act = new DsfMultiAssignObjectActivity {
                FieldsCollection = fieldsCollection
            };

            //------------Execute Test---------------------------

            act.UpdateForEachOutputs(new List <Tuple <string, string> >
            {
                new Tuple <string, string>("[[@Pet.Owner(*).Name]]", "[[@Pet.Owner(1).Name]]"),
            });

            //------------Assert Results-------------------------

            var collection = act.FieldsCollection;

            Assert.AreEqual("Bob", collection[0].FieldValue);
        }
Beispiel #5
0
        public void UniqueIDDifferent_EmptyAssigns_IsEqual()
        {
            //---------------Set up test pack-------------------
            var uniqueId     = Guid.NewGuid().ToString();
            var multiAssign  = new DsfMultiAssignObjectActivity();
            var multiAssign1 = new DsfMultiAssignObjectActivity();

            //---------------Assert Precondition----------------
            Assert.IsNotNull(multiAssign);
            //---------------Execute Test ----------------------
            var @equals = multiAssign.Equals(multiAssign1);

            //---------------Test Result -----------------------
            Assert.IsFalse(equals);
        }
Beispiel #6
0
        public void DsfMultiAssignObjectActivity_GetOutputs_Called_ShouldReturnListWithResultValueInIt()
        {
            //------------Setup for test--------------------------
            var fieldCollection = new ObservableCollection <AssignObjectDTO>();

            fieldCollection.Add(new AssignObjectDTO("[[@test.value1]]", "somevalue", fieldCollection.Count));
            var act = new DsfMultiAssignObjectActivity {
                OutputMapping = null, FieldsCollection = fieldCollection
            };
            //------------Execute Test---------------------------
            var outputs = act.GetOutputs();

            //------------Assert Results-------------------------
            Assert.AreEqual(1, outputs.Count);
            Assert.AreEqual("[[@test.value1]]", outputs[0]);
        }
Beispiel #7
0
        protected void BuildDataList()
        {
            BuildShapeAndTestData();

            scenarioContext.TryGetValue("fieldCollection", out List <AssignObjectDTO> fieldCollection);

            var multiAssign = new DsfMultiAssignObjectActivity();

            TestStartNode = new FlowStep
            {
                Action = multiAssign
            };

            foreach (var field in fieldCollection)
            {
                multiAssign.FieldsCollection.Add(field);
            }
            scenarioContext.Add("activity", multiAssign);
        }
Beispiel #8
0
        public void Equals_Given_Different_Object_Is_Not_Equal()
        {
            //---------------Set up test pack-------------------
            var uniqueId    = Guid.NewGuid().ToString();
            var multiAssign = new DsfMultiAssignObjectActivity()
            {
                UniqueID = uniqueId, DisplayName = "A"
            };
            var multiAssign1 = new DsfMultiAssignObjectActivity()
            {
                UniqueID = uniqueId, DisplayName = "ass"
            };

            //---------------Assert Precondition----------------
            Assert.IsNotNull(multiAssign);
            //---------------Execute Test ----------------------
            var @equals = multiAssign.Equals(multiAssign1);

            //---------------Test Result -----------------------
            Assert.IsFalse(equals);
        }
        public void DsfMultiAssignActivity_GetForEachOutputs_Normal_UpdateSuccessful()
        {
            //------------Setup for test--------------------------
            var fieldsCollection = new List <AssignObjectDTO>
            {
                new AssignObjectDTO("[[@Pet.Name]]", "[[result]]", 1),
            };

            var act = new DsfMultiAssignObjectActivity {
                FieldsCollection = fieldsCollection
            };

            //------------Execute Test---------------------------

            var inputs = act.GetForEachOutputs();

            //------------Assert Results-------------------------

            Assert.AreEqual("[[@Pet.Name]]", inputs[0].Value);
            Assert.AreEqual("[[result]]", inputs[0].Name);
        }
Beispiel #10
0
        public void DsfMultiAssignObjectActivity_GetState_Returns_Inputs_And_Outputs()
        {
            //------------Setup for test--------------------------
            var fieldsCollection = new List <AssignObjectDTO>
            {
                new AssignObjectDTO("[[@Pet.Name]]", "[[result]]", 1),
            };
            var act = new DsfMultiAssignObjectActivity {
                FieldsCollection = fieldsCollection
            };
            //------------Execute Test---------------------------
            var stateItems = act.GetState();

            Assert.AreEqual(1, stateItems.Count());
            var expectedResults = new[]
            {
                new StateVariable
                {
                    Name  = "Fields Collection",
                    Type  = StateVariable.StateType.InputOutput,
                    Value = ActivityHelper.GetSerializedStateValueFromCollection(fieldsCollection)
                }
            };

            var iter = act.GetState().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);
            }
        }
Beispiel #11
0
        /// <summary>
        /// Gets all the fields for a specific activity
        /// </summary>
        /// <param name="activity">The activity that the fields will be retrieved from</param>
        /// <returns>Returns all the fields in a list of strings</returns>
        public List <string> GetActivityFields(object activity)
        {
            List <string> results      = new List <string>();
            Type          activityType = activity.GetType();

            if (activityType == typeof(DsfBaseConvertActivity))
            {
                DsfBaseConvertActivity bcAct = activity as DsfBaseConvertActivity;
                if (bcAct != null)
                {
                    results.AddRange(InternalFindMissing(bcAct.ConvertCollection));
                }
            }
            else if (activityType == typeof(DsfCaseConvertActivity))
            {
                DsfCaseConvertActivity ccAct = activity as DsfCaseConvertActivity;
                if (ccAct != null)
                {
                    results.AddRange(InternalFindMissing(ccAct.ConvertCollection));
                }
            }
            else if (activityType == typeof(DsfMultiAssignActivity))
            {
                DsfMultiAssignActivity maAct = activity as DsfMultiAssignActivity;
                if (maAct != null)
                {
                    results.AddRange(InternalFindMissing(maAct.FieldsCollection));
                }
            }
            else if (activityType == typeof(DsfMultiAssignObjectActivity))
            {
                DsfMultiAssignObjectActivity maAct = activity as DsfMultiAssignObjectActivity;
                if (maAct != null)
                {
                    results.AddRange(InternalFindMissing(maAct.FieldsCollection));
                }
            }
            else if (activityType == typeof(DsfGatherSystemInformationActivity))
            {
                DsfGatherSystemInformationActivity maAct = activity as DsfGatherSystemInformationActivity;
                if (maAct != null)
                {
                    results.AddRange(InternalFindMissing(maAct.SystemInformationCollection));
                }
            }
            else if (activityType == typeof(DsfSqlServerDatabaseActivity))
            {
                var maAct = activity as DsfSqlServerDatabaseActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.Outputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Outputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }

                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfMySqlDatabaseActivity))
            {
                var maAct = activity as DsfMySqlDatabaseActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.Outputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Outputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }

                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfPostgreSqlActivity))
            {
                var maAct = activity as DsfPostgreSqlActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.Outputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Outputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }

                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfOracleDatabaseActivity))
            {
                var maAct = activity as DsfOracleDatabaseActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.Outputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Outputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }

                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfODBCDatabaseActivity))
            {
                var maAct = activity as DsfODBCDatabaseActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.CommandText != null)
                    {
                        results.Add(maAct.CommandText);
                    }
                    if (maAct.Outputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Outputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }

                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfWebPostActivity))
            {
                var maAct = activity as DsfWebPostActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }

                    if (maAct.QueryString != null)
                    {
                        results.Add(maAct.QueryString);
                    }
                    if (maAct.PostData != null)
                    {
                        results.Add(maAct.PostData);
                    }
                    if (maAct.Headers != null)
                    {
                        foreach (var nameValue in maAct.Headers)
                        {
                            results.Add(nameValue.Name);
                            results.Add(nameValue.Value);
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                }
            }
            else if (activityType == typeof(DsfWebDeleteActivity))
            {
                var maAct = activity as DsfWebDeleteActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.QueryString != null)
                    {
                        results.Add(maAct.QueryString);
                    }
                    if (maAct.Headers != null)
                    {
                        foreach (var nameValue in maAct.Headers)
                        {
                            results.Add(nameValue.Name);
                            results.Add(nameValue.Value);
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfWebPutActivity))
            {
                var maAct = activity as DsfWebPutActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.QueryString != null)
                    {
                        results.Add(maAct.QueryString);
                    }
                    if (maAct.PutData != null)
                    {
                        results.Add(maAct.PutData);
                    }
                    if (maAct.Headers != null)
                    {
                        foreach (var nameValue in maAct.Headers)
                        {
                            results.Add(nameValue.Name);
                            results.Add(nameValue.Value);
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfWebGetActivity))
            {
                var maAct = activity as DsfWebGetActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (maAct.QueryString != null)
                    {
                        results.Add(maAct.QueryString);
                    }
                    if (maAct.Headers != null)
                    {
                        foreach (var nameValue in maAct.Headers)
                        {
                            results.Add(nameValue.Name);
                            results.Add(nameValue.Value);
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.ObjectName))
                    {
                        results.Add(maAct.ObjectName);
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfDotNetDllActivity))
            {
                var maAct = activity as DsfDotNetDllActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfEnhancedDotNetDllActivity))
            {
                var maAct = activity as DsfEnhancedDotNetDllActivity;
                if (maAct != null)
                {
                    if (maAct.ConstructorInputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.ConstructorInputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }

                    if (maAct.MethodsToRun != null)
                    {
                        foreach (var pluginAction in maAct.MethodsToRun)
                        {
                            if (pluginAction?.Inputs != null)
                            {
                                results.AddRange(InternalFindMissing(pluginAction.Inputs));
                            }
                            if (!string.IsNullOrEmpty(pluginAction?.OutputVariable))
                            {
                                results.Add(pluginAction.OutputVariable);
                            }
                        }
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfComDllActivity))
            {
                var maAct = activity as DsfComDllActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            else if (activityType == typeof(DsfWcfEndPointActivity))
            {
                var maAct = activity as DsfWcfEndPointActivity;
                if (maAct != null)
                {
                    if (maAct.Inputs != null)
                    {
                        results.AddRange(InternalFindMissing(maAct.Inputs));
                    }

                    if (!string.IsNullOrEmpty(maAct.OnErrorVariable))
                    {
                        results.Add(maAct.OnErrorVariable);
                    }
                    if (maAct.IsObject)
                    {
                        if (!string.IsNullOrEmpty(maAct.ObjectName))
                        {
                            results.Add(maAct.ObjectName);
                        }
                    }
                    else
                    {
                        if (maAct.Outputs != null)
                        {
                            results.AddRange(InternalFindMissing(maAct.Outputs));
                        }
                    }
                    if (!string.IsNullOrEmpty(maAct.OnErrorWorkflow))
                    {
                        results.Add(maAct.OnErrorWorkflow);
                    }
                }
            }
            return(results);
        }