public void GetTypeDescriptorGetPropertiesWrappedPropertyDescriptor_ShouldSerializeValue_Success() { var provider = new AssociatedMetadataTypeTypeDescriptionProvider(typeof(ClassWithMetadataOnAnotherClass)); PropertyDescriptorCollection properties = provider.GetTypeDescriptor(typeof(ClassWithMetadataOnAnotherClass), null).GetProperties(); PropertyDescriptor descriptor = properties[nameof(ClassWithMetadataOnAnotherClass.FirstName)]; var component = new ClassWithMetadataOnAnotherClass(); Assert.True(descriptor.ShouldSerializeValue(component)); }
public void GetTypeDescriptorGetPropertiesWrappedPropertyDescriptor_AddValueChanged_Success() { var provider = new AssociatedMetadataTypeTypeDescriptionProvider(typeof(ClassWithMetadataOnAnotherClass)); PropertyDescriptorCollection properties = provider.GetTypeDescriptor(typeof(ClassWithMetadataOnAnotherClass), null).GetProperties(); PropertyDescriptor descriptor = properties[nameof(ClassWithMetadataOnAnotherClass.FirstName)]; var component = new ClassWithMetadataOnAnotherClass(); int callCount = 0; EventHandler handler = (sender, e) => callCount++; descriptor.AddValueChanged(component, handler); descriptor.SetValue(component, "value"); Assert.Equal(1, callCount); }
public void GetTypeDescriptorGetPropertiesWrappedPropertyDescriptor_ResetValue_Success() { var provider = new AssociatedMetadataTypeTypeDescriptionProvider(typeof(ClassWithMetadataOnAnotherClass)); PropertyDescriptorCollection properties = provider.GetTypeDescriptor(typeof(ClassWithMetadataOnAnotherClass), null).GetProperties(); PropertyDescriptor descriptor = properties[nameof(ClassWithMetadataOnAnotherClass.FirstName)]; var component = new ClassWithMetadataOnAnotherClass { FirstName = "value" }; descriptor.ResetValue(component); Assert.Equal("value", descriptor.GetValue(component)); Assert.Equal("value", component.FirstName); }