Esempio n. 1
0
        public void ShouldNotAccept()
        {
            CharacterRange predicate;

            predicate = Parse.CharacterRange('a', 'z');
            Assert.IsFalse(predicate.Accept('1'));
        }
Esempio n. 2
0
        public void ShouldConvertToString()
        {
            IPredicate predicate;

            predicate = Parse.CharacterRange('a', 'z');
            Assert.AreEqual("[a-z]", predicate.ToString());
        }
Esempio n. 3
0
        public void ShouldReadAndSeek()
        {
            ICharReader reader;
            ILexer      lexer;
            Rule        letter, word;
            TokenMatch  tokenMatch;

            reader = new MockedCharReader("abcde");

            word   = new Rule("Word", Parse.Characters("abcdef"));
            letter = new Rule("Letter", Parse.CharacterRange('a', 'z'));

            lexer = new Lexer(word, letter);

            tokenMatch = lexer.Read(reader);
            Assert.AreEqual("Letter", tokenMatch.Token.Class);
            Assert.AreEqual("a", tokenMatch.Token.Value);
            tokenMatch = lexer.Read(reader);
            Assert.AreEqual("Letter", tokenMatch.Token.Class);
            Assert.AreEqual("b", tokenMatch.Token.Value);
            tokenMatch = lexer.Read(reader);
            Assert.AreEqual("Letter", tokenMatch.Token.Class);
            Assert.AreEqual("c", tokenMatch.Token.Value);
            tokenMatch = lexer.Read(reader);
            Assert.AreEqual("Letter", tokenMatch.Token.Class);
            Assert.AreEqual("d", tokenMatch.Token.Value);
            tokenMatch = lexer.Read(reader);
            Assert.AreEqual("Letter", tokenMatch.Token.Class);
            Assert.AreEqual("e", tokenMatch.Token.Value);
        }
Esempio n. 4
0
        public void ShouldCreateCharacterRangePredicate()
        {
            ICharacterRange predicate;

            predicate = Parse.CharacterRange('a', 'z');
            Assert.IsNotNull(predicate);
            Assert.AreEqual('a', predicate.FirstValue);
            Assert.AreEqual('z', predicate.LastValue);
        }
Esempio n. 5
0
        public void ShouldAccept()
        {
            CharacterRange predicate;

            predicate = Parse.CharacterRange('a', 'z');
            Assert.IsTrue(predicate.Accept('a'));
            Assert.IsTrue(predicate.Accept('b'));
            Assert.IsTrue(predicate.Accept('c'));
            Assert.IsTrue(predicate.Accept('z'));
        }