Mercurial > pub > bltoolkit
diff HowTo/EditableObjects/EditableObjectTest.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/HowTo/EditableObjects/EditableObjectTest.cs Thu Mar 27 21:46:09 2014 +0400 @@ -0,0 +1,40 @@ +using System; +using NUnit.Framework; +using BLToolkit.EditableObjects; + +namespace HowTo.EditableObjects +{ + [TestFixture] + public class EditableObjectTest + { + public /*[a]*/abstract/*[/a]*/ class TestObject : /*[a]*/EditableObject/*[/a]*/<TestObject> + { + // Any abstract property becomes editable. + // + public /*[a]*/abstract/*[/a]*/ string FirstName { get; set; } + public /*[a]*/abstract/*[/a]*/ string LastName { get; set; } + + // This field is not editable. + // + public string FullName + { + get { return string.Format("{0} {1}", FirstName, LastName); } + } + } + + [Test] + public void Test() + { + TestObject obj = TestObject./*[a]*/CreateInstance/*[/a]*/(); + + obj.FirstName = "Tester"; + obj.LastName = "Testerson"; + + Assert.IsTrue(obj.IsDirty); + + obj.AcceptChanges(); + + Assert.IsFalse(obj.IsDirty); + } + } +}