public void Test_AttributeValueModifier_Time() { var origin = DateTime.SpecifyKind(new DateTime(2000, 1, 1, 1, 1, 1), DateTimeKind.Utc); Assert.Equal(0, AttributeValueModifiers.ModifiedTime(DateTime.SpecifyKind(new DateTime(2000, 1, 1, 1, 1, 1), DateTimeKind.Utc), origin)); Assert.Equal(100, AttributeValueModifiers.ModifiedTime(DateTime.SpecifyKind(new DateTime(2000, 1, 1, 1, 1, 11), DateTimeKind.Utc), origin)); }
public void Test_AttributeValueModifier_Time_FailWithNegativeOffset() { var origin = DateTime.SpecifyKind(new DateTime(2000, 2, 1, 1, 1, 1), DateTimeKind.Utc); Action act = () => AttributeValueModifiers.ModifiedTime(DateTime.SpecifyKind(new DateTime(2000, 1, 1, 1, 1, 1), DateTimeKind.Utc), origin); act.Should().Throw <ArgumentException>().WithMessage("Time argument [*] should not be less that the origin [*]"); }
public void Test_AttributeValueRangeCalculator_NullRangeHeights() { // Simulate a subgrid containing the same non-null elevation in every cell, expressed as a single vector long value = AttributeValueModifiers.ModifiedHeight(12345.678F); long[] values = Enumerable.Range(0, SubGridTreeConsts.SubGridTreeCellsPerSubGrid).Select(x => value).ToArray(); EncodedBitFieldDescriptor descriptor = new EncodedBitFieldDescriptor(); AttributeValueRangeCalculator.CalculateAttributeValueRange(values, 0, values.Length, 0xffffffff, 0x7fffffff, true, ref descriptor); Assert.Equal(descriptor.MinValue, value); Assert.Equal(descriptor.MaxValue, value); Assert.Equal(0, descriptor.RequiredBits); }
public void Test_AttributeValueModifier_Time_FailWithNonUTCDate() { Action act = () => AttributeValueModifiers.ModifiedTime(DateTime.Now, DateTime.Now); act.Should().Throw <ArgumentException>().WithMessage("Time and time origin must be a UTC date time"); }
public void Test_AttributeValueModifier_Height() { Assert.Equal(AttributeValueModifiers.ModifiedHeight(Consts.NullHeight), int.MaxValue); Assert.Equal(12345678, AttributeValueModifiers.ModifiedHeight(12345.678F)); }