public void ApplyTransform_StringField_ExceptionIsThrown() { var record = new MockRecord() { StringField = "10" }; var amount = 2d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.StringField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); }
public void ApplyTransform_DecimalFieldWithDivideByZero_ExceptionIsThrown() { var record = new MockRecord() { DecimalField = 10m }; var amount = 0d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.DecimalField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); }
public void ApplyTransform_FloatFieldWithAboveZeroValue_DivideByTransformApplied() { var record = new MockRecord() { FloatField = 10f }; var amount = 2d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.FloatField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); Assert.AreEqual(5f, record.FloatField); }
public void ApplyTransform_NullableDoubleFieldWithNullValue_NullValueIsReturned() { var record = new MockRecord() { NullableDoubleField = null }; var amount = 2d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.NullableDoubleField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); Assert.IsNull(record.NullableDoubleField); }
public void ApplyTransform_DoubleFieldWithZeroValue_DivideByTransformApplied() { var record = new MockRecord() { DoubleField = 0d }; var amount = 10d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.DoubleField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); Assert.AreEqual(0d, record.DoubleField); }
public void ApplyTransform_DoubleFieldWithDivideByZero_InfinityIsSet() { var record = new MockRecord() { DoubleField = 10d }; var amount = 0d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.DoubleField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); Assert.AreEqual(Double.PositiveInfinity, record.DoubleField); }
public void ApplyTransform_IntFieldWithFractionalDivideBy_DivideByTransformApplied() { var record = new MockRecord() { IntField = 10 }; var amount = 2.5d; var property = typeof(MockRecord).GetProperty(nameof(MockRecord.IntField)); var divideByAttribute = new DivideByAttribute(amount); divideByAttribute.ApplyTransform(property, record); Assert.AreEqual(4, record.IntField); }