public void SetRowKeyValue()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("String");
            var property = new RowKeyProperty<EntityWithFields>(fieldInfo);
            var tableEntity = new DynamicTableEntity {RowKey = "Key"};
            var entity = new EntityWithFields();

            // Act
            property.SetMemberValue(tableEntity, entity);

            // Assert
            Assert.Equal(tableEntity.RowKey, entity.String);
        }
        public void GetTimestampValue()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("DateTime");
            var property = new TimestampProperty<EntityWithFields>(fieldInfo);
            var tableEntity = new DynamicTableEntity();
            var entity = new EntityWithFields{ DateTime = new DateTime(1980, 1, 1)};

            // Act
            property.GetMemberValue(entity, tableEntity);

            // Assert
            Assert.Equal(DateTime.MinValue, tableEntity.Timestamp.UtcDateTime);
        }
        public void FieldValueAccessorSetBooleanTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Boolean");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields {Boolean = true};
            const bool newValue = false;

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.Boolean, newValue);
        }
        public void FieldValueAccessorGetBooleanTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Boolean");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            const bool value = true;
            var user = new EntityWithFields { Boolean = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.BooleanValue, value);
        }
예제 #5
0
        public void GetETagValue()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("String");
            var property = new ETagProperty<EntityWithFields>(fieldInfo);
            var tableEntity = new DynamicTableEntity();
            var entity = new EntityWithFields{ String = "*"};

            // Act
            property.GetMemberValue(entity, tableEntity);

            // Assert
            Assert.Equal(entity.String, tableEntity.ETag);
        }
        public void SetRegularPropertyValue()
        {
            // Arrange
            FieldInfo fieldInfo = typeof (EntityWithFields).GetField("Guid");
            var property = new RegularProperty<EntityWithFields>(fieldInfo);
            var tableEntity = new DynamicTableEntity();
            tableEntity.Properties.Add("Guid", new EntityProperty(Guid.NewGuid()));
            var entity = new EntityWithFields();

            // Act
            property.SetMemberValue(tableEntity, entity);

            // Assert
            Assert.Equal(tableEntity.Properties["Guid"].GuidValue, entity.Guid);
        }
        public void GetRegularPropertyValue()
        {
            // Arrange
            FieldInfo fieldInfo = typeof (EntityWithFields).GetField("Int64");
            var property = new RegularProperty<EntityWithFields>(fieldInfo);
            var tableEntity = new DynamicTableEntity();
            var entity = new EntityWithFields {Int64 = 22};

            // Act
            property.GetMemberValue(entity, tableEntity);

            // Assert
            Assert.Contains("Int64", tableEntity.Properties.Keys);
            Assert.Equal(EdmType.Int64, tableEntity.Properties["Int64"].PropertyType);
            Assert.Equal(entity.Int64, tableEntity.Properties["Int64"].Int64Value);
        }
        public void FieldValueAccessorGetBinaryTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Binary");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var value = new byte[] {0x11, 0x22, 0x33};
            var user = new EntityWithFields { Binary = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.BinaryValue, value);
        }
        public void FieldValueAccessorSetNullableDateTimeOffsetTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableDateTimeOffset");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { NullableDateTimeOffset = null };
            DateTimeOffset? newValue = DateTime.UtcNow;

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.NullableDateTimeOffset, newValue);
        }
        public void FieldValueAccessorGetStringTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("String");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            const string value = "aabbcc";
            var user = new EntityWithFields { String = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.StringValue, value);
        }
        public void FieldValueAccessorSetStringTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("String");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { String = "aabbcc" };
            const string newValue = "ccbbaa";

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.String, newValue);
        }
        public void FieldValueAccessorGetNullableInt64Test()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableInt64");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            Int64? value = 3;
            var user = new EntityWithFields { NullableInt64 = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.Int64Value, value);
        }
        public void FieldValueAccessorSetNullableInt64Test()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableInt64");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { NullableInt64 = null };
            Int64? newValue = 5;

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.NullableInt64, newValue);
        }
        public void FieldValueAccessorGetNullableDateTimeOffsetTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableDateTimeOffset");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            DateTimeOffset? value = DateTime.UtcNow;
            var user = new EntityWithFields { NullableDateTimeOffset = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.DateTimeOffsetValue, value);
        }
        public void FieldValueAccessorSetDateTimeOffsetTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("DateTimeOffset");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { DateTimeOffset = DateTime.Today };
            DateTimeOffset newValue = DateTime.Now;

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.DateTimeOffset, newValue);
        }
        public void FieldValueAccessorGetNullableGuidTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableGuid");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            Guid? value = Guid.NewGuid();
            var user = new EntityWithFields { NullableGuid = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.GuidValue, value);
        }
        public void FieldValueAccessorSetNullableGuidTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableGuid");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { NullableGuid = null };
            Guid? newValue = Guid.NewGuid();

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.NullableGuid, newValue);
        }
        public void FieldValueAccessorSetNullableDoubleTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("NullableDouble");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { NullableDouble = 0.3 };
            Double? newValue = 0.5;

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.NullableDouble, newValue);
        }
        public void FieldValueAccessorGetDoubleTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Double");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            const Double value = 0.3;
            var user = new EntityWithFields { Double = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.DoubleValue, value);
        }
        public void FieldValueAccessorGetInt32Test()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Int32");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            const Int32 value = 3;
            var user = new EntityWithFields { Int32 = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.Equal(entityField.Int32Value, value);
        }
        public void FieldValueAccessorGetDateTimeTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("DateTime");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            DateTime value = DateTime.UtcNow;
            var user = new EntityWithFields { DateTime = value };

            // Act
            EntityProperty entityField = valueAccessor.GetValue(user);

            // Assert
            Assert.NotNull(entityField.DateTimeOffsetValue);
            Assert.True(entityField.DateTimeOffsetValue.HasValue);
            Assert.Equal(entityField.DateTimeOffsetValue.Value.DateTime, value);
        }
        public void FieldValueAccessorSetInt64Test()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Int64");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { Int64 = 2 };
            const Int64 newValue = 5;

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.Int64, newValue);
        }
        public void FieldValueAccessorSetBinaryTest()
        {
            // Arrange
            FieldInfo fieldInfo = typeof(EntityWithFields).GetField("Binary");
            var valueAccessor = new FieldValueAccessor<EntityWithFields>(fieldInfo);
            var entity = new EntityWithFields { Binary = new byte[]{0x11, 0x22, 0x33} };
            var newValue = new byte[] {0x33, 0x22, 0x11};

            // Act
            valueAccessor.SetValue(entity, new EntityProperty(newValue));

            // Assert
            Assert.Equal(entity.Binary, newValue);
        }