public void Revert_collection_property_removed()
        {
            MockEntity     entity           = new MockEntity();
            MockEntity     relationalEntity = new MockEntity();
            string         entityPath       = ".RelationalEntities[Guid=" + relationalEntity.Guid + "]";
            PropertyChange change           = new PropertyChange(entityPath, string.Empty, string.Empty, relationalEntity, null);

            change.Revert(entity);

            Assert.AreEqual(1, entity.RelationalEntities.Count);
            Assert.AreEqual(relationalEntity, entity.RelationalEntities.Single());
        }
        public void Revert_flat_property()
        {
            string     before = "1";
            string     after  = "2";
            MockEntity entity = new MockEntity();

            entity.StringProperty = after;
            PropertyChange change = new PropertyChange(".", "StringProperty", string.Empty, before, after, entity.State);

            change.Revert(entity);
            Assert.AreEqual(before, entity.StringProperty);
        }
        public void Revert_flat_property_relational_entity()
        {
            string     before = null;
            string     after  = "Changed";
            MockEntity entity = new MockEntity();

            entity.RelationalEntity1 = new MockEntity()
            {
                StringProperty = after
            };
            PropertyChange change = new PropertyChange(".RelationalEntity1", "StringProperty", string.Empty, before, after, entity.State);

            change.Revert(entity);
            Assert.AreEqual(before, entity.RelationalEntity1.StringProperty);
        }