public void PureObjectBase_UpdateInstance_CopyInstance()
        {
            var objectBase      = new PureObjectTest(TestLoggerFactory);
            var objectBaseClone = objectBase.CopyInstance();

            objectBase.IncreaseObjectVersion();

            objectBaseClone.UpdateInstance(objectBase).ObjectVersion.Should().Be(objectBaseClone.ObjectVersion);
        }
        public void PureObjectBase_Equals_CopyInstance()
        {
            var objectBase1 = new PureObjectTest(TestLoggerFactory);
            var objectBase2 = objectBase1.CopyInstance();

            // ObjectId's are same but Creation and Modification dates are different
            Assert.True(objectBase1.Equals(objectBase2), "objectBase1.Equals(objectBase2)");
            Assert.True(objectBase1.IsSameObjectId(objectBase2), "objectBase1.IsSameObjectId(objectBase2)");
            Assert.True(objectBase1.IsSameObjectVersion(objectBase2), "objectBase1.IsSameObjectVersion(objectBase2)");
        }
        public void PureObjectBase_CopyInstance()
        {
            var objectBase1 = new PureObjectTest(TestLoggerFactory);
            var objectBase2 = objectBase1.CopyInstance();

            // Objects version is the same but everyone else
            Assert.True(objectBase1.Equals(objectBase2), "objectBase1.Equals(objectBase2)");
            Assert.True(objectBase1.IsSameObjectId(objectBase2), "objectBase1.IsSameObjectId(objectBase2)");
            Assert.True(objectBase1.IsSameObjectVersion(objectBase2), "objectBase1.IsSameObjectVersion(objectBase2)");
        }