Exemple #1
0
        public void Intersects_DoesAtBorder()
        {
            var left  = LineRange.CreateFromBounds(0, 2);
            var right = LineRange.CreateFromBounds(3, 4);

            Assert.IsTrue(left.Intersects(right));
        }
Exemple #2
0
        public void Add_Simple()
        {
            var visited = new LineRangeVisited();

            visited.Add(LineRange.CreateFromBounds(0, 2));
            Assert.AreEqual(LineRange.CreateFromBounds(0, 2), visited.LineRange.Value);
        }
            public void Simple()
            {
                var visited = new NormalizedLineRangeCollection();

                visited.Add(LineRange.CreateFromBounds(0, 2));
                Assert.Equal(LineRange.CreateFromBounds(0, 2), visited.OverarchingLineRange.Value);
            }
Exemple #4
0
        public void Intersects_SimpleDoesnt()
        {
            var left  = LineRange.CreateFromBounds(0, 1);
            var right = LineRange.CreateFromBounds(3, 4);

            Assert.IsFalse(left.Intersects(right));
        }
Exemple #5
0
        public void Intersects_SimpleDoes()
        {
            var left  = LineRange.CreateFromBounds(0, 2);
            var right = LineRange.CreateFromBounds(1, 4);

            Assert.IsTrue(left.Intersects(right));
        }
Exemple #6
0
        public void Add_Intersects()
        {
            var visited = Create(new LineRange(1, 4));

            visited.Add(LineRange.CreateFromBounds(3, 5));
            Assert.AreEqual(1, visited.List.Count);
            Assert.AreEqual(LineRange.CreateFromBounds(1, 5), visited.LineRange.Value);
        }
Exemple #7
0
            public void Simple()
            {
                var lineRange = LineRange.CreateFromBounds(1, 3);

                Assert.Equal(3, lineRange.Count);
                Assert.Equal(1, lineRange.StartLineNumber);
                Assert.Equal(3, lineRange.LastLineNumber);
            }
            public void Intersects()
            {
                var visited = Create(new LineRange(1, 4));

                visited.Add(LineRange.CreateFromBounds(3, 5));
                Assert.Equal(1, visited.Count);
                Assert.Equal(LineRange.CreateFromBounds(1, 5), visited.OverarchingLineRange.Value);
            }
            public void NotIntersects_ReverseOrder()
            {
                var visited = Create(LineRange.CreateFromBounds(4, 6));

                visited.Add(LineRange.CreateFromBounds(0, 2));
                Assert.Equal(2, visited.Count);
                Assert.Equal(LineRange.CreateFromBounds(0, 2), visited[0]);
                Assert.Equal(LineRange.CreateFromBounds(4, 6), visited[1]);
            }
            public void NonIntersecting_WrongOrder()
            {
                var visited = Create(
                    LineRange.CreateFromBounds(3, 4),
                    LineRange.CreateFromBounds(0, 1));

                Assert.Equal(LineRange.CreateFromBounds(0, 1), visited[0]);
                Assert.Equal(LineRange.CreateFromBounds(3, 4), visited[1]);
            }
Exemple #11
0
        public void Add_NotIntersects()
        {
            var visited = Create(LineRange.CreateFromBounds(0, 2));

            visited.Add(LineRange.CreateFromBounds(4, 6));
            Assert.AreEqual(2, visited.List.Count);
            Assert.AreEqual(LineRange.CreateFromBounds(0, 2), visited.List[0]);
            Assert.AreEqual(LineRange.CreateFromBounds(4, 6), visited.List[1]);
        }
Exemple #12
0
        public void OfSeq_NonIntersecting_WrongOrder()
        {
            var visited = Create(
                LineRange.CreateFromBounds(3, 4),
                LineRange.CreateFromBounds(0, 1));

            Assert.AreEqual(LineRange.CreateFromBounds(0, 1), visited.List[0]);
            Assert.AreEqual(LineRange.CreateFromBounds(3, 4), visited.List[1]);
        }
            public void MissingLineRange()
            {
                var visited = Create(LineRange.CreateFromBounds(0, 1));

                visited.Add(LineRange.CreateFromBounds(3, 4));
                Assert.Equal(2, visited.Count);
                visited.Add(LineRange.CreateFromBounds(2, 2));
                Assert.Equal(1, visited.Count);
                Assert.Equal(LineRange.CreateFromBounds(0, 4), visited.OverarchingLineRange.Value);
            }
Exemple #14
0
        public void Add_MissingLineRange()
        {
            var visited = Create(LineRange.CreateFromBounds(0, 1));

            visited.Add(LineRange.CreateFromBounds(3, 4));
            Assert.AreEqual(2, visited.List.Count);
            visited.Add(LineRange.CreateFromBounds(2, 2));
            Assert.AreEqual(1, visited.List.Count);
            Assert.AreEqual(LineRange.CreateFromBounds(0, 4), visited.LineRange.Value);
        }
            public void IntersectLast()
            {
                var visited = Create(
                    LineRange.CreateFromBounds(0, 3),
                    LineRange.CreateFromBounds(6, 9));

                visited.Add(LineRange.CreateFromBounds(7, 10));
                Assert.Equal(
                    new[] { LineRange.CreateFromBounds(0, 3), LineRange.CreateFromBounds(6, 10) },
                    visited);
            }
            public void IntersectMultiple()
            {
                var visited = Create(
                    LineRange.CreateFromBounds(0, 1),
                    LineRange.CreateFromBounds(3, 4),
                    LineRange.CreateFromBounds(6, 7));

                Assert.Equal(3, visited.Count);
                visited.Add(LineRange.CreateFromBounds(1, 6));
                Assert.Equal(1, visited.Count);
                Assert.Equal(LineRange.CreateFromBounds(0, 7), visited.OverarchingLineRange.Value);
            }
            public void IntesectBefore()
            {
                var visited = Create(
                    LineRange.CreateFromBounds(0, 3),
                    LineRange.CreateFromBounds(6, 7));

                Assert.Equal(2, visited.Count);
                visited.Add(LineRange.CreateFromBounds(2, 4));
                Assert.Equal(2, visited.Count);
                Assert.Equal(LineRange.CreateFromBounds(0, 4), visited[0]);
                Assert.Equal(LineRange.CreateFromBounds(6, 7), visited[1]);
            }
Exemple #18
0
        public void Add_IntersectMultiple()
        {
            var visited = Create(
                LineRange.CreateFromBounds(0, 1),
                LineRange.CreateFromBounds(3, 4),
                LineRange.CreateFromBounds(6, 7));

            Assert.AreEqual(3, visited.List.Count);
            visited.Add(LineRange.CreateFromBounds(1, 6));
            Assert.AreEqual(1, visited.List.Count);
            Assert.AreEqual(LineRange.CreateFromBounds(0, 7), visited.LineRange.Value);
        }
Exemple #19
0
 public void BadBounds()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() => LineRange.CreateFromBounds(3, 1));
 }