コード例 #1
0
        public void AttributeDeleteConstructorSVTest()
        {
            AttributeValueDeleteConstructor attributeConstructor = new AttributeValueDeleteConstructor();

            attributeConstructor.Attribute = ActiveConfig.DB.GetAttribute("mail");
            attributeConstructor.RuleGroup = new RuleGroup();
            attributeConstructor.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Add
            });

            Guid newId = Guid.NewGuid();

            try
            {
                MAObjectHologram sourceObject = ActiveConfig.DB.CreateMAObject(newId, "person");
                sourceObject.SetAttributeValue(ActiveConfig.DB.GetAttribute("mail"), "*****@*****.**");
                sourceObject.CommitCSEntryChange();
                sourceObject.DiscardPendingChanges();
                sourceObject.SetObjectModificationType(ObjectModificationType.Update, false);
                attributeConstructor.Execute(sourceObject);

                AttributeValue value = sourceObject.GetSVAttributeValue(ActiveConfig.DB.GetAttribute("mail"));

                if (!value.IsNull)
                {
                    Assert.Fail("The constructor did not delete the attribute value");
                }
            }
            finally
            {
                ActiveConfig.DB.DeleteMAObjectPermanent(newId);
            }
        }
コード例 #2
0
        public void TestSerialization()
        {
            AttributeValueDeleteConstructor toSeralize = new AttributeValueDeleteConstructor();

            toSeralize.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            toSeralize.ID          = "abc1235645645";
            toSeralize.Description = "some description";
            toSeralize.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.All
            };
            toSeralize.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Add
            });
            Lithnet.Common.ObjectModel.UniqueIDCache.ClearIdCache();
            AttributeValueDeleteConstructor deserialized = UnitTestControl.XmlSerializeRoundTrip <AttributeValueDeleteConstructor>(toSeralize);

            Assert.AreEqual(toSeralize.Attribute, deserialized.Attribute);
            Assert.AreEqual(toSeralize.ID, deserialized.ID);
            Assert.AreEqual(toSeralize.Description, deserialized.Description);
            Assert.AreEqual(toSeralize.RuleGroup.Operator, deserialized.RuleGroup.Operator);
            Assert.AreEqual(((ObjectChangeRule)toSeralize.RuleGroup.Items[0]).TriggerEvents, ((ObjectChangeRule)deserialized.RuleGroup.Items[0]).TriggerEvents);
        }
コード例 #3
0
        public void TestSerialization()
        {
            UniqueIDCache.ClearIdCache();
            AttributeValueDeleteConstructor constructorToSerialize1 = new AttributeValueDeleteConstructor();

            constructorToSerialize1.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            constructorToSerialize1.ID          = "abc123";
            constructorToSerialize1.Description = "some description";
            constructorToSerialize1.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.Any
            };
            constructorToSerialize1.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Delete
            });

            AttributeValueDeleteConstructor constructorToSerialize2 = new AttributeValueDeleteConstructor();

            constructorToSerialize2.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            constructorToSerialize2.ID          = "abc1234";
            constructorToSerialize2.Description = "some description";
            constructorToSerialize2.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.All
            };
            constructorToSerialize2.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Add
            });

            AttributeConstructorGroup groupToSerialize = new AttributeConstructorGroup();

            groupToSerialize.Description   = "my description";
            groupToSerialize.ID            = "myID";
            groupToSerialize.ExecutionRule = GroupExecutionRule.ExitAfterFirstSuccess;
            groupToSerialize.RuleGroup     = new RuleGroup()
            {
                Operator = GroupOperator.Any
            };
            groupToSerialize.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Delete
            });
            groupToSerialize.Constructors.Add(constructorToSerialize1);
            groupToSerialize.Constructors.Add(constructorToSerialize2);

            UniqueIDCache.ClearIdCache();

            AttributeConstructorGroup deserializedGroup = UnitTestControl.XmlSerializeRoundTrip <AttributeConstructorGroup>(groupToSerialize);

            Assert.AreEqual(groupToSerialize.ExecutionRule, deserializedGroup.ExecutionRule);
            Assert.AreEqual(groupToSerialize.ID, deserializedGroup.ID);
            Assert.AreEqual(groupToSerialize.Description, deserializedGroup.Description);
            Assert.AreEqual(groupToSerialize.RuleGroup.Operator, deserializedGroup.RuleGroup.Operator);
            Assert.AreEqual(((ObjectChangeRule)groupToSerialize.RuleGroup.Items[0]).TriggerEvents, ((ObjectChangeRule)deserializedGroup.RuleGroup.Items[0]).TriggerEvents);

            Assert.AreEqual(constructorToSerialize1.Attribute, ((AttributeConstructor)deserializedGroup.Constructors[0]).Attribute);
            Assert.AreEqual(constructorToSerialize1.ID, ((AttributeConstructor)deserializedGroup.Constructors[0]).ID);
            Assert.AreEqual(constructorToSerialize1.Description, ((AttributeConstructor)deserializedGroup.Constructors[0]).Description);
            Assert.AreEqual(constructorToSerialize1.RuleGroup.Operator, ((AttributeConstructor)deserializedGroup.Constructors[0]).RuleGroup.Operator);
            Assert.AreEqual(((ObjectChangeRule)constructorToSerialize1.RuleGroup.Items[0]).TriggerEvents, ((ObjectChangeRule)((AttributeConstructor)deserializedGroup.Constructors[0]).RuleGroup.Items[0]).TriggerEvents);

            Assert.AreEqual(constructorToSerialize2.Attribute, ((AttributeConstructor)deserializedGroup.Constructors[1]).Attribute);
            Assert.AreEqual(constructorToSerialize2.ID, ((AttributeConstructor)deserializedGroup.Constructors[1]).ID);
            Assert.AreEqual(constructorToSerialize2.Description, ((AttributeConstructor)deserializedGroup.Constructors[1]).Description);
            Assert.AreEqual(constructorToSerialize2.RuleGroup.Operator, ((AttributeConstructor)deserializedGroup.Constructors[1]).RuleGroup.Operator);
            Assert.AreEqual(((ObjectChangeRule)constructorToSerialize2.RuleGroup.Items[0]).TriggerEvents, ((ObjectChangeRule)((AttributeConstructor)deserializedGroup.Constructors[1]).RuleGroup.Items[0]).TriggerEvents);
        }
コード例 #4
0
        public void TestSerialization()
        {
            AttributeValueDeleteConstructor constructorToSerialize1 = new AttributeValueDeleteConstructor();

            constructorToSerialize1.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            constructorToSerialize1.ID          = "abc123";
            constructorToSerialize1.Description = "some description";
            constructorToSerialize1.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.Any
            };
            constructorToSerialize1.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Delete
            });

            AttributeValueDeleteConstructor constructorToSerialize2 = new AttributeValueDeleteConstructor();

            constructorToSerialize2.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            constructorToSerialize2.ID          = "abc123";
            constructorToSerialize2.Description = "some description";
            constructorToSerialize2.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.All
            };
            constructorToSerialize2.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Add
            });

            AttributeConstructorGroup groupToSerialize = new AttributeConstructorGroup();

            groupToSerialize.Description   = "my description";
            groupToSerialize.ID            = "myID";
            groupToSerialize.ExecutionRule = GroupExecutionRule.ExitAfterFirstSuccess;
            groupToSerialize.RuleGroup     = new RuleGroup()
            {
                Operator = GroupOperator.Any
            };
            groupToSerialize.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Delete
            });
            groupToSerialize.Constructors.Add(constructorToSerialize1);

            ClassConstructor classConstructorToSerialize = new ClassConstructor();

            classConstructorToSerialize.ObjectClass = ActiveConfig.DB.GetObjectClass("person");
            classConstructorToSerialize.ExitEvents.Add(new AcmaInternalExitEvent()
            {
                ID = "testName"
            });
            classConstructorToSerialize.Constructors.Add(groupToSerialize);
            classConstructorToSerialize.Constructors.Add(constructorToSerialize2);

            classConstructorToSerialize.ResurrectionParameters          = new DBQueryGroup();
            classConstructorToSerialize.ResurrectionParameters.Operator = GroupOperator.Any;
            classConstructorToSerialize.ResurrectionParameters.DBQueries.Add(new DBQueryByValue(ActiveConfig.DB.GetAttribute("sn"), ValueOperator.Equals, new ValueDeclaration("test")));
            classConstructorToSerialize.ResurrectionParameters.DBQueries.Add(new DBQueryByValue(ActiveConfig.DB.GetAttribute("sn"), ValueOperator.Equals, ActiveConfig.DB.GetAttribute("sn")));

            XmlConfigFile toSerialize = new XmlConfigFile();

            toSerialize.ClassConstructors.Add(classConstructorToSerialize);
            toSerialize.Transforms = new TransformKeyedCollection();
            toSerialize.Transforms.Add(new TrimStringTransform()
            {
                TrimType = TrimType.Both, ID = "trimboth"
            });
            UniqueIDCache.ClearIdCache();

            XmlConfigFile deserialized = UnitTestControl.XmlSerializeRoundTrip <XmlConfigFile>(toSerialize);

            Assert.AreEqual(toSerialize.ClassConstructors.Count, deserialized.ClassConstructors.Count);
            Assert.AreEqual(toSerialize.Transforms.Count, deserialized.Transforms.Count);
        }
コード例 #5
0
 public AttributeValueDeleteConstructorViewModel(AttributeValueDeleteConstructor model)
     : base(model)
 {
 }
コード例 #6
0
        public void TestSerialization()
        {
            AttributeValueDeleteConstructor constructorToSerialize1 = new AttributeValueDeleteConstructor();

            constructorToSerialize1.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            constructorToSerialize1.ID          = "abc123";
            constructorToSerialize1.Description = "some description";
            constructorToSerialize1.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.Any
            };
            constructorToSerialize1.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Delete
            });

            AttributeValueDeleteConstructor constructorToSerialize2 = new AttributeValueDeleteConstructor();

            constructorToSerialize2.Attribute   = ActiveConfig.DB.GetAttribute("sn");
            constructorToSerialize2.ID          = "abc123";
            constructorToSerialize2.Description = "some description";
            constructorToSerialize2.RuleGroup   = new RuleGroup()
            {
                Operator = GroupOperator.All
            };
            constructorToSerialize2.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Add
            });

            AttributeConstructorGroup groupToSerialize = new AttributeConstructorGroup();

            groupToSerialize.Description   = "my description";
            groupToSerialize.ID            = "myID";
            groupToSerialize.ExecutionRule = GroupExecutionRule.ExitAfterFirstSuccess;
            groupToSerialize.RuleGroup     = new RuleGroup()
            {
                Operator = GroupOperator.Any
            };
            groupToSerialize.RuleGroup.Items.Add(new ObjectChangeRule()
            {
                TriggerEvents = TriggerEvents.Delete
            });
            groupToSerialize.Constructors.Add(constructorToSerialize1);

            ClassConstructor toSerialize = new ClassConstructor();

            toSerialize.ObjectClass = ActiveConfig.DB.GetObjectClass("person");
            toSerialize.ExitEvents.Add(new AcmaInternalExitEvent()
            {
                ID = "testName"
            });
            toSerialize.Constructors.Add(groupToSerialize);
            toSerialize.Constructors.Add(constructorToSerialize2);

            toSerialize.ResurrectionParameters          = new DBQueryGroup();
            toSerialize.ResurrectionParameters.Operator = GroupOperator.Any;
            toSerialize.ResurrectionParameters.DBQueries.Add(new DBQueryByValue(ActiveConfig.DB.GetAttribute("sn"), ValueOperator.Equals, new ValueDeclaration("test")));
            toSerialize.ResurrectionParameters.DBQueries.Add(new DBQueryByValue(ActiveConfig.DB.GetAttribute("sn"), ValueOperator.Equals, ActiveConfig.DB.GetAttribute("sn")));

            UniqueIDCache.ClearIdCache();
            ClassConstructor deserialized = UnitTestControl.XmlSerializeRoundTrip <ClassConstructor>(toSerialize);

            Assert.AreEqual(groupToSerialize.ExecutionRule, ((AttributeConstructorGroup)deserialized.Constructors[0]).ExecutionRule);
            Assert.AreEqual(groupToSerialize.ID, ((AttributeConstructorGroup)deserialized.Constructors[0]).ID);
            Assert.AreEqual(groupToSerialize.Description, ((AttributeConstructorGroup)deserialized.Constructors[0]).Description);
            Assert.AreEqual(groupToSerialize.RuleGroup.Operator, ((AttributeConstructorGroup)deserialized.Constructors[0]).RuleGroup.Operator);
            Assert.AreEqual(((ObjectChangeRule)groupToSerialize.RuleGroup.Items[0]).TriggerEvents, ((ObjectChangeRule)((AttributeConstructorGroup)deserialized.Constructors[0]).RuleGroup.Items[0]).TriggerEvents);

            Assert.AreEqual(constructorToSerialize2.Attribute, ((AttributeConstructor)deserialized.Constructors[1]).Attribute);
            Assert.AreEqual(constructorToSerialize2.ID, ((AttributeConstructor)deserialized.Constructors[1]).ID);
            Assert.AreEqual(constructorToSerialize2.Description, ((AttributeConstructor)deserialized.Constructors[1]).Description);
            Assert.AreEqual(constructorToSerialize2.RuleGroup.Operator, ((AttributeConstructor)deserialized.Constructors[1]).RuleGroup.Operator);
            Assert.AreEqual(((ObjectChangeRule)constructorToSerialize2.RuleGroup.Items[0]).TriggerEvents, ((ObjectChangeRule)((AttributeConstructor)deserialized.Constructors[1]).RuleGroup.Items[0]).TriggerEvents);
        }