public void RoundtripSerialize() { var original = PropertyBasedImportDefinition.CreateDefinition( "A", TypeIdentity.CreateDefinition(typeof(int)), ImportCardinality.ExactlyOne, true, CreationPolicy.NonShared, typeof(string).GetProperty("Length")); var copy = AssertExtensions.RoundTripSerialize(original); Assert.AreEqual(original, copy); }
public void CreateWithClass() { var obj = PropertyBasedImportDefinition.CreateDefinition( "A", TypeIdentity.CreateDefinition(typeof(int)), ImportCardinality.ExactlyOne, true, CreationPolicy.NonShared, typeof(string).GetProperty("Length")); var property = GetPropertyForString(); Assert.AreEqual("A", obj.ContractName); Assert.AreEqual(TypeIdentity.CreateDefinition(typeof(int)), obj.RequiredTypeIdentity); Assert.AreEqual(ImportCardinality.ExactlyOne, obj.Cardinality); Assert.IsTrue(obj.IsRecomposable); Assert.IsFalse(obj.IsPrerequisite); Assert.AreEqual(CreationPolicy.NonShared, obj.RequiredCreationPolicy); Assert.AreEqual(TypeIdentity.CreateDefinition(property.DeclaringType), obj.DeclaringType); Assert.AreEqual(PropertyDefinition.CreateDefinition(property), obj.Property); }