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); } }
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); }
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); }
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); }
public AttributeValueDeleteConstructorViewModel(AttributeValueDeleteConstructor model) : base(model) { }
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); }