public void TestCreate() { Object1 o = Object1.CreateInstance(); Assert.That(o.Field4, Is.EqualTo(2L)); Assert.That(o.Field3, Is.EqualTo(new DateTime(2, 2, 2))); Assert.That(o.Field13, Is.EqualTo(3.08m)); Assert.IsFalse(o.IsDirty); TypeAccessor <Object1> .Instance["ID"].SetValue(o, 1); Assert.AreEqual(1, o.ID); Assert.IsTrue(o.IsDirty); Assert.IsTrue(o.IsDirtyMember("ID")); o.AcceptChanges(); Assert.IsFalse(o.IsDirty); o.Field16 = DayOfWeek.Saturday; Assert.AreEqual(DayOfWeek.Saturday, o.Field16); Assert.IsTrue(o.IsDirty); Assert.IsTrue(o.IsDirtyMember("Field16")); o.AcceptChanges(); Assert.IsFalse(o.IsDirty); o.Field17 = 5; Assert.AreEqual(5, o.Field17); Assert.IsTrue(o.IsDirty); Assert.IsTrue(o.IsDirtyMember("Field17")); o.AcceptChanges(); Assert.IsFalse(o.IsDirty); o.XmlField.LoadXml(@"<root><element attribute=""value""/></root>"); Assert.IsTrue(o.IsDirty); o.AcceptChanges(); o.XmlField.SelectSingleNode("/root/element/@attribute").Value = "changed"; Assert.IsTrue(o.IsDirty); Assert.IsTrue(o.IsDirtyMember("XmlField")); o.AcceptChanges(); Assert.IsFalse(o.IsDirty); o.XmlField.SelectSingleNode("/root/element/@attribute").Value = "once again"; o.XmlField = new XmlDocument(); Assert.IsTrue(o.IsDirty); }
public void IsDirtyTest() { Object1 o = Object1.CreateInstance(); o.Field1 = 10; o.Field2 = !o.Field2; o.Field3 = DateTime.Now; o.AcceptChanges(); Object1 c = (Object1)((ICloneable)o).Clone(); Assert.IsFalse(o.IsDirty); Assert.IsFalse(c.IsDirty); o.Field1 = 100; c = (Object1)((ICloneable)o).Clone(); Assert.IsTrue(o.IsDirty); Assert.IsTrue(c.IsDirty); Assert.IsTrue(o.IsDirtyMember("Field1")); Assert.IsTrue(c.IsDirtyMember("Field1")); Assert.IsFalse(o.IsDirtyMember("Field2")); Assert.IsFalse(c.IsDirtyMember("Field2")); }