public void CanDocumentUpdateWithExplicitMetadata()
        {
            var          createdDate       = new DateTime(2000, 1, 1);
            const string createdByUser     = "******";
            var          lastChangedDate   = new DateTime(2010, 1, 1);
            const string lastChangedByUser = "******";

            var entity = new TestEntity
            {
                CreatedDate       = createdDate,
                CreatedByUser     = createdByUser,
                LastChangedDate   = lastChangedDate,
                LastChangedByUser = lastChangedByUser
            };

            object[] oldValues = CreateValues(null, null, null, null);
            object[] newValues = CreateValues(entity);

            EntityMetadataUtils.DocumentUpdate(entity, newValues, oldValues, _properties);

            Assert.AreEqual(createdDate, entity.CreatedDate);
            Assert.AreEqual(createdByUser, entity.CreatedByUser);
            Assert.AreEqual(lastChangedDate, entity.LastChangedDate);
            Assert.AreEqual(lastChangedByUser, entity.LastChangedByUser);
        }
        public void CanDocumentUpdate()
        {
            var entity = new TestEntity();

            object[] oldValues = CreateValues(null, null, null, null);
            object[] newValues = CreateValues(null, null, null, null);

            EntityMetadataUtils.DocumentUpdate(entity, newValues, oldValues, _properties);

            Assert.IsNull(entity.CreatedDate);
            Assert.IsNull(entity.CreatedByUser);
            Assert.IsNotNull(entity.LastChangedDate);
            Assert.IsNotNull(entity.LastChangedByUser);
        }