コード例 #1
0
            public IProperty CloneWithoutObject()
            {
                var prop = _property.CloneWithoutObject();

                prop.SetObject(((ITypeExtension)_property.Object).CloneWithoutObject());
                return(new ExtensionProperty(_objectType, prop));
            }
コード例 #2
0
        static void CloneYieldsIndependentPropertiesWithSameObject(IProperty property, object o)
        {
            // Arrange
            property.SetObject(o);

            // Act
            IProperty clone = property.CloneWithoutObject();

            // Assert
            Assert.AreNotSame(property, clone);
            Assert.AreSame(o, property.Object);
            Assert.IsNull(clone.Object);
        }
コード例 #3
0
        static void ClonedPropertyCanChangeObjectIndependently(IProperty property, object o1, object o2)
        {
            // Arrange
            property.SetObject(o1);

            // Act
            IProperty clone = property.CloneWithoutObject();

            clone.SetObject(o2);

            // Assert
            Assert.AreSame(o1, property.Object);
            Assert.AreSame(o2, clone.Object);
        }