public void ReadsTypeFromPropertyInfo() { var gridUnitExtension = new GridUnitExtension(ValidThicknessMultiplier); var serviceProvider = MockedServiceProvider.CreateForTargetPropertyType <Thickness>(); object result = gridUnitExtension.ProvideValue(serviceProvider); Assert.IsType <Thickness>(result); }
public void UsesTargetTypeProperty() { // We pass in a property of type A, // but set the TargetType to type B. // Type B is the expected type of the result. var gridUnitExtension = new GridUnitExtension( ValidThicknessMultiplier, typeof(Thickness)); var serviceProvider = MockedServiceProvider.CreateForTargetPropertyType <Point>(); object result = gridUnitExtension.ProvideValue(serviceProvider); Assert.IsType <Thickness>(result); }
public void ReadsTypeFromDependencyProperties() { var gridUnitExtension = new GridUnitExtension(ValidThicknessMultiplier); var depProp = DependencyProperties.ThicknessProperty; // Use a random dep.prop. var serviceProvider = new MockedServiceProvider() { TargetProperty = depProp }; object result = gridUnitExtension.ProvideValue(serviceProvider); Assert.IsType(depProp.PropertyType, result); }
public void ReadsTypeFromSetters() { var gridUnitExtension = new GridUnitExtension(ValidPointMultiplier); var depProp = DependencyProperties.PointProperty; var serviceProvider = new MockedServiceProvider() { // Use a setter to a random dependency property. // What counts is that it has a supported type. TargetObject = new Setter(depProp, new Point(1, 1)) }; object result = gridUnitExtension.ProvideValue(serviceProvider); Assert.IsType(depProp.PropertyType, result); }