Ejemplo n.º 1
0
        public void TestIntsNotFloats()
        {
            var lex = new FloatLexer(new StringReader("1"));
            var tok = lex.Scan();

            Assert.AreEqual(tok.tag, Tag.INTEGER);
        }
Ejemplo n.º 2
0
        public void TestFloatsWithFractionalPart()
        {
            var lex = new FloatLexer(new StringReader("321.32"));
            var tok = lex.Scan();

            Assert.AreEqual(tok.tag, Tag.FLOAT);
            Assert.AreEqual(((FloatToken)tok).value, 321.32f);
        }
Ejemplo n.º 3
0
    public static void TestExtra3()
    {
        System.Console.WriteLine("\n------------------");
        System.Console.WriteLine("\nTests for ExtraTask 3");
        string input = "123.45678";
        Lexer  L     = new FloatLexer(input);

        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }

        input = "0.1234";
        L     = new FloatLexer(input);
        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }

        System.Console.WriteLine("\nThere should be errors:");

        input = "12.";
        L     = new FloatLexer(input);
        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }

        input = "12";
        L     = new FloatLexer(input);
        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }

        input = ".12";
        L     = new FloatLexer(input);
        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }

        input = "a";
        L     = new FloatLexer(input);
        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }

        input = "";
        L     = new FloatLexer(input);
        try
        {
            L.Parse();
        }
        catch (LexerException e)
        {
            System.Console.WriteLine(e.Message);
        }
    }