示例#1
0
        public void Wrapper_Copy_CopyReadonlyPropertyThrows()
        {
            var propertyWrapper = new PropertyWrapper<TestObjectWithReadonlyProperty, int>(o => o.ReadonlyProperty);

            var instance1 = new TestObjectWithReadonlyProperty();
            var instance2 = new TestObjectWithReadonlyProperty();

            propertyWrapper.Copy(instance1, instance2);
        }
示例#2
0
        public void Wrapper_Copy_ValueCopied()
        {
            var propertyWrapper = new PropertyWrapper<MergeTestObject, int>(o => o.Property1);

            var instance1 = new MergeTestObject()
            {
                Property1 = 1
            };

            var instance2 = new MergeTestObject();

            propertyWrapper.Copy(instance1, instance2);

            Assert.AreEqual(instance1.Property1, instance2.Property1);
        }
示例#3
0
        public void Wrapper_Copy_OnlyWrappedPropertiesCopied()
        {
            var propertyWrapper = new PropertyWrapper<MergeTestObject, int>(o => o.Property1);

            var instance1 = new MergeTestObject()
            {
                Property1 = 1
            };

            var canary = 666;
            var instance2 = new MergeTestObject()
            {
                Property2 = canary,
                Property3 = canary.ToString()
            };

            propertyWrapper.Copy(instance1, instance2);

            Assert.AreEqual(canary, instance2.Property2);
            Assert.AreEqual(canary.ToString(), instance2.Property3);
        }
示例#4
0
        public void Wrapper_Copy_ValueCopied()
        {
            var propertyWrapper = new PropertyWrapper<MergeTestObject, int>(o => o.Property1);

            var instance1 = new MergeTestObject()
            {
                Property1 = 1
            };

            var instance2 = new MergeTestObject();

            propertyWrapper.Copy(instance1, instance2);

            Assert.AreEqual(instance1.Property1, instance2.Property1);
        }
示例#5
0
        public void Wrapper_Copy_OnlyWrappedPropertiesCopied()
        {
            var propertyWrapper = new PropertyWrapper<MergeTestObject, int>(o => o.Property1);

            var instance1 = new MergeTestObject()
            {
                Property1 = 1
            };

            var canary = 666;
            var instance2 = new MergeTestObject()
            {
                Property2 = canary,
                Property3 = canary.ToString()
            };

            propertyWrapper.Copy(instance1, instance2);

            Assert.AreEqual(canary, instance2.Property2);
            Assert.AreEqual(canary.ToString(), instance2.Property3);
        }
示例#6
0
        public void Wrapper_Copy_CopyReadonlyPropertyThrows()
        {
            var propertyWrapper = new PropertyWrapper<TestObjectWithReadonlyProperty, int>(o => o.ReadonlyProperty);

            var instance1 = new TestObjectWithReadonlyProperty();
            var instance2 = new TestObjectWithReadonlyProperty();

            propertyWrapper.Copy(instance1, instance2);
        }