示例#1
0
 public void Range_MinGreaterThanMax()
 {
     // Act & Assert
     Assert.Throws(typeof(ArgumentException),
                   // ReSharper disable once ObjectCreationAsStatement
                   () => SingleRange.Range(20, 10));
 }
示例#2
0
        public void Range_MinLowerThanMax()
        {
            // Act
            var range = SingleRange.Range(10, 20);

            // Assert
            AssertChunks(range, 10, 20);
        }
示例#3
0
        public void Range_MinEqualToMax()
        {
            // Act
            var range = SingleRange.Range(10, 10);

            // Assert
            AssertChunks(range, 10, 10);
        }
示例#4
0
        public void AddChunk_ImmediatelyBeforeMin1()
        {
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(_Before10, _Before10);

            // Assert
            AssertChunks(range, _Before10, 20);
        }
示例#5
0
        public void AddChunk_Error()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act & Assert
            Assert.Throws(typeof(ArgumentException),
                          // ReSharper disable once ObjectCreationAsStatement
                          () => range.Range(20, 10));
        }
示例#6
0
        public void AddChunk_AfterMaxInfinity()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(30, SingleRange.MaxValue);

            // Assert
            AssertChunks(range, 10, 20, 30, SingleRange.MaxValue);
        }
示例#7
0
        public void AddChunk_AfterMax()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(30, 40);

            // Assert
            AssertChunks(range, 10, 20, 30, 40);
        }
示例#8
0
        public void AddChunk_MaxImmediatelyAfterMax()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(15, _After20);

            // Assert
            AssertChunks(range, 10, _After20);
        }
示例#9
0
        public void AddChunk_ContainingMax()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(12, 25);

            // Assert
            AssertChunks(range, 10, 25);
        }
示例#10
0
        public void AddChunk_BetweenMinMax()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(12, 14);

            // Assert
            AssertChunks(range, 10, 20);
        }
示例#11
0
        public void AddChunk_ContainingMin()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(5, 14);

            // Assert
            AssertChunks(range, 5, 20);
        }
示例#12
0
        public void AddChunk_MinImmediatelyBeforeMin()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(_Before10, 15);

            // Assert
            AssertChunks(range, _Before10, 20);
        }
示例#13
0
        public void AddChunk_InfinityBeforeMin()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(SingleRange.MinValue, 8);

            // Assert
            AssertChunks(range, SingleRange.MinValue, 8, 10, 20);
        }
示例#14
0
        public void AddChunk_BeforeMin()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            // Assume
            AssertChunks(range, 10, 20);

            // Act
            range.Range(5, 8);

            // Assert
            AssertChunks(range, 5, 8, 10, 20);
        }
示例#15
0
        public void AddChunk2_ContainingMinMax1_Infinity()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(5, SingleRange.MaxValue);

            // Assert
            AssertChunks(range, 5, SingleRange.MaxValue);
        }
示例#16
0
        public void AddChunk2_ImmediatelyAfterMax2_Infinity()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(_After40, SingleRange.MaxValue);

            // Assert
            AssertChunks(range, 10, 20, 30, SingleRange.MaxValue);
        }
示例#17
0
        public void AddChunkThatCompleteBoth()
        {
            // Arrange
            var range = SingleRange.Range(1, SingleRange.MaxValue);

            range.Range(SingleRange.MinValue, -1);

            // Assume
            AssertChunks(range, SingleRange.MinValue, -1, 1, SingleRange.MaxValue);

            // Act
            range.Range(BitConverterHelper.Next(-1F), BitConverterHelper.Previous(1F));

            // Assert
            AssertChunks(range, SingleRange.MinValue, SingleRange.MaxValue);
        }
示例#18
0
        public void AddChunk2_BetweenMinMax2_AfterMax2()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(34, 46);

            // Assert
            AssertChunks(range, 10, 20, 30, 46);
        }
示例#19
0
        public void AddChunk2_BetweenMinMax2_Infinity()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(34, SingleRange.MaxValue);

            // Assert
            AssertChunks(range, 10, 20, 30, SingleRange.MaxValue);
        }
示例#20
0
        public void AddChunk2_ImmediatelyBeforeMin1()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(5, _Before10);

            // Assert
            AssertChunks(range, 5, 20, 30, 40);
        }
示例#21
0
        public void AddChunk2_AfterMax1_ImmediatelyBeforeMin2()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(23, _Before30);

            // Assert
            AssertChunks(range, 10, 20, 23, 40);
        }
示例#22
0
        public void AddChunk2_ContainingMinMax1_ImmediatelyBeforeMin2()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(5, _Before30);

            // Assert
            AssertChunks(range, 5, 40);
        }
示例#23
0
        public void AddChunk2_ImmediatelyAfterMax1_AfterMax2()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(_After20, 45);

            // Assert
            AssertChunks(range, 10, 45);
        }
示例#24
0
        public void AddChunk2_ContainingMax1_ContainingMinMax2()
        {
            // Arrange
            var range = SingleRange.Range(10, 20);

            range.Range(30, 40);

            // Assume
            AssertChunks(range, 10, 20, 30, 40);

            // Act
            range.Range(15, 42);

            // Assert
            AssertChunks(range, 10, 42);
        }