public void TimestampConvention_DoesntApplyWhenTheAttributeIsAppliedOnANonEntityType() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); ComplexTypeConfiguration complexType = new ComplexTypeConfiguration(); PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, complexType); complexType.ExplicitProperties.Add(property, primitiveProperty); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, complexType); // Assert Assert.False(primitiveProperty.ConcurrencyToken); }
public void TimestampConvention_AppliesWhenTheAttributeIsAppliedToASingleProperty() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); EntityTypeConfiguration entityType = new EntityTypeConfiguration(); PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, entityType); entityType.ExplicitProperties.Add(property, primitiveProperty); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, entityType); // Assert Assert.True(primitiveProperty.ConcurrencyToken); }
public void TimestampConvention_DoesntApplyWhenTheAttributeIsAppliedOnANonEntityType() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); ComplexTypeConfiguration complexType = new ComplexTypeConfiguration(); PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, complexType); complexType.ExplicitProperties.Add(property, primitiveProperty); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, complexType, ODataConventionModelBuilderFactory.Create()); // Assert Assert.False(primitiveProperty.ConcurrencyToken); }
public void TimestampConvention_AppliesWhenTheAttributeIsAppliedToASingleProperty() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); EntityTypeConfiguration entityType = new EntityTypeConfiguration(); PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, entityType); entityType.ExplicitProperties.Add(property, primitiveProperty); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, entityType, ODataConventionModelBuilderFactory.Create()); // Assert Assert.True(primitiveProperty.ConcurrencyToken); }
public void TimestampConvention_DoesntApplyWhenTheAttributeIsAppliedToMultipleProperties() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); PropertyInfo otherProperty = CreateMockPropertyInfo("OtherTestProperty"); EntityTypeConfiguration entityType = new EntityTypeConfiguration(); PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, entityType); entityType.ExplicitProperties.Add(property, primitiveProperty); entityType.ExplicitProperties.Add(otherProperty, new PrimitivePropertyConfiguration(otherProperty, entityType)); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, entityType); // Assert Assert.False(primitiveProperty.ConcurrencyToken); }
public void TimestampConvention_DoesntApplyWhenTheAttributeIsAppliedToMultipleProperties_InATypeHierarchy() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); PropertyInfo otherProperty = CreateMockPropertyInfo("OtherTestProperty"); EntityTypeConfiguration baseEntityType = new EntityTypeConfiguration(); EntityTypeConfiguration entityType = new Mock<EntityTypeConfiguration>().SetupAllProperties().Object; entityType.BaseType = baseEntityType; PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, entityType); entityType.ExplicitProperties.Add(property, primitiveProperty); baseEntityType.ExplicitProperties.Add(otherProperty, new PrimitivePropertyConfiguration(otherProperty, baseEntityType)); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, entityType, new ODataConventionModelBuilder()); // Assert Assert.False(primitiveProperty.ConcurrencyToken); }
public void TimestampConvention_DoesntApplyWhenTheAttributeIsAppliedToMultipleProperties_InATypeHierarchy() { // Arrange PropertyInfo property = CreateMockPropertyInfo("TestProperty"); PropertyInfo otherProperty = CreateMockPropertyInfo("OtherTestProperty"); ODataModelBuilder modelBuilder = ODataConventionModelBuilderFactory.Create(); EntityTypeConfiguration baseEntityType = new EntityTypeConfiguration(modelBuilder, typeof(object)); EntityTypeConfiguration entityType = new EntityTypeConfiguration(modelBuilder, typeof(Int32)); entityType.BaseType = baseEntityType; PrimitivePropertyConfiguration primitiveProperty = new PrimitivePropertyConfiguration(property, entityType); entityType.ExplicitProperties.Add(property, primitiveProperty); baseEntityType.ExplicitProperties.Add(otherProperty, new PrimitivePropertyConfiguration(otherProperty, baseEntityType)); TimestampAttributeEdmPropertyConvention convention = new TimestampAttributeEdmPropertyConvention(); // Act convention.Apply(primitiveProperty, entityType, ODataConventionModelBuilderFactory.Create()); // Assert Assert.False(primitiveProperty.ConcurrencyToken); }