Exemplo n.º 1
0
        public void CssTextRange_Simple()
        {
            ITextProvider textProvider = new StringTextProvider("01234567890123456789");

            Assert.AreEqual("01234", textProvider.GetText(10, 5));

            Assert.IsFalse(TextRange.Touches(10, 5, -1));
            Assert.IsFalse(TextRange.Touches(10, 5, 9));
            Assert.IsTrue(TextRange.Touches(10, 5, 10));
            Assert.IsTrue(TextRange.Touches(10, 5, 14));
            Assert.IsTrue(TextRange.Touches(10, 5, 15));
            Assert.IsFalse(TextRange.Touches(10, 5, 16));
            Assert.IsFalse(TextRange.Touches(10, 5, 100));

            Assert.IsFalse(TextRange.ContainsChar(10, 5, -1));
            Assert.IsFalse(TextRange.ContainsChar(10, 5, 9));
            Assert.IsTrue(TextRange.ContainsChar(10, 5, 10));
            Assert.IsTrue(TextRange.ContainsChar(10, 5, 14));
            Assert.IsFalse(TextRange.ContainsChar(10, 5, 15));
            Assert.IsFalse(TextRange.ContainsChar(10, 5, 16));
            Assert.IsFalse(TextRange.ContainsChar(10, 5, 100));

            Assert.IsFalse(TextRange.Intersects(10, 5, 0, 10));
            Assert.IsTrue(TextRange.Intersects(10, 5, 0, 11));
            Assert.IsFalse(TextRange.Intersects(10, 5, 10, 0));
            Assert.IsTrue(TextRange.Intersects(10, 5, 10, 1));
            Assert.IsTrue(TextRange.Intersects(10, 5, 11, 10));
            Assert.IsTrue(TextRange.Intersects(10, 5, 14, 1));
            Assert.IsTrue(TextRange.Intersects(10, 5, 14, 10));
            Assert.IsFalse(TextRange.Intersects(10, 5, 15, 0));
            Assert.IsFalse(TextRange.Intersects(10, 5, 15, 1));
            Assert.IsFalse(TextRange.Intersects(10, 5, 20, 10));
        }
Exemplo n.º 2
0
        public void ParseItem_ContainsTest()
        {
            CssParser  p = new CssParser();
            StyleSheet s = p.Parse("@charset \"foo\"; .a { } .b { } /* */", true);

            Assert.IsTrue(TextRange.ContainsChar(s.Start, s.Length, 0));
            Assert.IsTrue(TextRange.ContainsChar(s.Start, s.Length, s.Start));
            Assert.IsTrue(TextRange.ContainsChar(s.Start, s.Length, s.AfterEnd - 1));
            Assert.IsTrue(TextRange.ContainsChar(s.Start, s.Length, (s.Start + s.AfterEnd) / 2));
            Assert.IsFalse(TextRange.ContainsChar(s.Start, s.Length, s.AfterEnd));
            Assert.IsFalse(TextRange.ContainsChar(s.Start, s.Length, (s.Start - 1)));

            Assert.IsTrue(TextRange.Touches(s.Start, s.Length, s.Start));
            Assert.IsTrue(TextRange.Touches(s.Start, s.Length, s.AfterEnd));
            Assert.IsFalse(TextRange.Touches(s.Start, s.Length, s.Start - 1));
            Assert.IsFalse(TextRange.Touches(s.Start, s.Length, s.AfterEnd + 1));
        }