public void When_DefaultValueProvider_Multiple_Registered_Overwrite() { bool GetDefaultValue(DependencyProperty property, out object value) { if (property == DefaultValueProviderSample.TestProperty) { value = 3; return(true); } value = null; return(false); } bool GetDefaultValue2(DependencyProperty property, out object value) { if (property == DefaultValueProviderSample.TestProperty) { value = 17; return(true); } value = null; return(false); } var test = new DefaultValueProviderSample(); test.RegisterDefaultValueProvider(GetDefaultValue); test.RegisterDefaultValueProvider(GetDefaultValue2); var value = test.GetPrecedenceSpecificValue(DefaultValueProviderSample.TestProperty, DependencyPropertyValuePrecedences.DefaultValue); Assert.AreEqual(17, value); }
public void When_DefaultValueProvider_Registered_Other_Property_Not_Affected() { var test = new DefaultValueProviderSample(); var value = test.GetPrecedenceSpecificValue(DefaultValueProviderSample.OtherProperty, DependencyPropertyValuePrecedences.DefaultValue); Assert.AreEqual(0, value); }
public void When_DefaultValueProvider_Registered_Provides_Value() { var test = new DefaultValueProviderSample(); var value = test.GetPrecedenceSpecificValue(DefaultValueProviderSample.TestProperty, DependencyPropertyValuePrecedences.DefaultValue); Assert.AreEqual(3, value); }
public void When_DefaultValueProvider_Registered_Other_Property_Not_Affected() { bool GetDefaultValue(DependencyProperty property, out object value) { if (property == DefaultValueProviderSample.TestProperty) { value = 3; return(true); } value = 42; // Set arbitrary to verify false has effect return(false); } var test = new DefaultValueProviderSample(); test.RegisterDefaultValueProvider(GetDefaultValue); var value = test.GetPrecedenceSpecificValue(DefaultValueProviderSample.OtherProperty, DependencyPropertyValuePrecedences.DefaultValue); Assert.AreEqual(0, value); }