Beispiel #1
0
        public void TestSingle()
        {
            // Identifier
            Simplexer lexer = new Simplexer("x");

            Assert.AreEqual(true, lexer.MoveNext());
            Assert.AreEqual(new Token("x", "identifier"), lexer.Current);

            // Boolean
            lexer = new Simplexer("true");
            Assert.AreEqual(true, lexer.MoveNext());
            Assert.AreEqual(new Token("true", "boolean"), lexer.Current);

            // Integer
            lexer = new Simplexer("12345");
            Assert.AreEqual(true, lexer.MoveNext());
            Assert.AreEqual(new Token("12345", "integer"), lexer.Current);

            // String
            lexer = new Simplexer("\"Hello\"");
            Assert.AreEqual(true, lexer.MoveNext());
            Assert.AreEqual(new Token("\"Hello\"", "string"), lexer.Current);

            // Keyword
            lexer = new Simplexer("break");
            Assert.AreEqual(true, lexer.MoveNext());
            Assert.AreEqual(new Token("break", "keyword"), lexer.Current);

            // Whitespace
            lexer = new Simplexer("  	");
            Assert.AreEqual(true, lexer.MoveNext());
            Assert.AreEqual(new Token("  	", "whitespace"), lexer.Current);
        }
Beispiel #2
0
        private Token[] ToArray(Simplexer lexer)
        {
            List <Token> tokens = new List <Token>();

            while (lexer.MoveNext())
            {
                tokens.Add(lexer.Current);
            }
            return(tokens.ToArray());
        }
Beispiel #3
0
        public void TestEmpty()
        {
            Simplexer lexer = new Simplexer("");

            Assert.AreEqual(false, lexer.MoveNext());
        }