public void IsValidStructuralProperty_should_return_false_for_indexed_property() { var mockProperty = new MockPropertyInfo(); mockProperty.Setup(p => p.GetIndexParameters()).Returns(new ParameterInfo[1]); Assert.False(mockProperty.Object.IsValidStructuralProperty()); }
public void CreatePropertySetter_throws_for_pointer_types() { var pointerType = new MockType(); pointerType.Protected().Setup <bool>("IsPointerImpl").Returns(true); var property = new MockPropertyInfo(pointerType.Object, "PointerProp"); var setter = new Mock <MethodInfo>(); setter.Setup(m => m.ReturnType).Returns(pointerType.Object); setter.Setup(m => m.DeclaringType).Returns(new MockType().Object); #if NET40 property.Setup(m => m.GetSetMethod(true)).Returns(setter.Object); #else property.Setup(m => m.SetMethod).Returns(setter.Object); #endif Assert.Equal( Strings.CodeGen_PropertyUnsupportedType, Assert.Throws <InvalidOperationException>( () => DelegateFactory.CreatePropertySetter(new MockType(), property.Object, true)).Message); }
public void ODataConventionModelBuilder_IgnoresIndexerProperties() { MockType type = new MockType("ComplexType") .Property <int>("Item"); MockPropertyInfo pi = type.GetProperty("Item"); pi.Setup(p => p.GetIndexParameters()).Returns(new[] { new Mock <ParameterInfo>().Object }); // make it indexer ODataConventionModelBuilder builder = new ODataConventionModelBuilder(); builder.AddComplexType(type); IEdmModel model = builder.GetEdmModel(); IEdmComplexType complexType = model.AssertHasComplexType(type); Assert.Empty(complexType.Properties()); }
public void CreatePropertySetter_throws_for_pointer_types() { var pointerType = new MockType(); pointerType.Protected().Setup<bool>("IsPointerImpl").Returns(true); var property = new MockPropertyInfo(pointerType.Object, "PointerProp"); var setter = new Mock<MethodInfo>(); setter.Setup(m => m.ReturnType).Returns(pointerType.Object); setter.Setup(m => m.DeclaringType).Returns(new MockType().Object); property.Setup(m => m.GetSetMethod(true)).Returns(setter.Object); Assert.Equal( Strings.CodeGen_PropertyUnsupportedType, Assert.Throws<InvalidOperationException>( () => DelegateFactory.CreatePropertySetter(new MockType(), property.Object, true)).Message); }