Пример #1
0
        public void FindOffset_Char__ReturnsCorrectValue()
        {
            var reader = new StringCodeReader("aaa bbb");

            Assert.AreEqual(0, reader.FindOffset('a'));
            Assert.AreEqual(0, reader.Position);
            Assert.AreEqual(4, reader.FindOffset('b'));
            Assert.AreEqual(0, reader.Position);

            reader.Advance(2);
            Assert.AreEqual(0, reader.FindOffset('a'));
            Assert.AreEqual(2, reader.Position);
            Assert.AreEqual(2, reader.FindOffset('b'));
            Assert.AreEqual(2, reader.Position);
            Assert.AreEqual(-1, reader.FindOffset('c'));
            Assert.AreEqual(2, reader.Position);
        }
Пример #2
0
        public void FindOffset_Char_Int32__ReturnsCorrectValue()
        {
            var reader = new StringCodeReader("aaa bbb");

            Assert.AreEqual(1, reader.FindOffset('a', 1));
            Assert.AreEqual(0, reader.Position);
            Assert.AreEqual(5, reader.FindOffset('b', 5));
            Assert.AreEqual(0, reader.Position);
            Assert.AreEqual(-1, reader.FindOffset('b', 8));
            Assert.AreEqual(0, reader.Position);

            reader.Advance(2);
            Assert.AreEqual(-1, reader.FindOffset('a', 1));
            Assert.AreEqual(2, reader.Position);
            Assert.AreEqual(3, reader.FindOffset('b', 3));
            Assert.AreEqual(2, reader.Position);
            Assert.AreEqual(-1, reader.FindOffset('c'));
            Assert.AreEqual(2, reader.Position);
            Assert.AreEqual(-1, reader.FindOffset('b', 6));
            Assert.AreEqual(2, reader.Position);

            Assert.ThrowsException <ArgumentOutOfRangeException>(() => reader.FindOffset('a', -1),
                                                                 "The offset must be positivel.");
        }
Пример #3
0
        public void FindOffset_String__ReturnsCorrectValue()
        {
            var reader = new StringCodeReader("aaa bbb");

            Assert.AreEqual(0, reader.FindOffset("aaa"));
            Assert.AreEqual(0, reader.Position);
            Assert.AreEqual(4, reader.FindOffset("bbb"));
            Assert.AreEqual(0, reader.Position);

            reader.Advance(1);
            Assert.AreEqual(0, reader.FindOffset("aa"));
            Assert.AreEqual(1, reader.Position);
            Assert.AreEqual(-1, reader.FindOffset("aaa"));
            Assert.AreEqual(1, reader.Position);
            Assert.AreEqual(3, reader.FindOffset("bbb"));
            Assert.AreEqual(1, reader.Position);
            Assert.AreEqual(-1, reader.FindOffset("ccc"));
            Assert.AreEqual(1, reader.Position);

#nullable disable