bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 13/13] java: tests: remove now redundant tests


From: Akim Demaille
Subject: [PATCH 13/13] java: tests: remove now redundant tests
Date: Wed, 5 Feb 2020 18:05:05 +0100

* tests/javapush.at: here.
---
 tests/javapush.at | 639 ----------------------------------------------
 1 file changed, 639 deletions(-)

diff --git a/tests/javapush.at b/tests/javapush.at
index 940a8886..e3aa49bd 100644
--- a/tests/javapush.at
+++ b/tests/javapush.at
@@ -235,642 +235,3 @@ AT_CHECK_JAVA_GREP(
         [[Initial action invoked]],
         [1])
 AT_CLEANUP
-
-
-## ------------------------------ ##
-## Calculator with a push parser  ##
-## ------------------------------ ##
-
-# Define a single copy of the Calculator grammar.
-m4_define([AT_CALC_BODY],[
-%code imports {
-  import java.io.*;
-}
-
-%code {
-  static StringReader
-  getinput(String filename) throws IOException
-  {
-    // Yes, there are better alternatives to StringBuffer.  But we
-    // don't really care about performances here, while portability
-    // to older Java matters.
-    StringBuffer buf = new StringBuffer();
-    FileReader file = new FileReader(filename);
-    int c;
-    while (0 < (c = file.read()))
-      buf.append((char)c);
-    file.close();
-    return new StringReader(buf.toString());
-  }
-}
-
-/* Bison Declarations */
-%token <Integer> NUM "number"
-%type  <Integer> exp
-
-%nonassoc '=' /* comparison            */
-%left '-' '+'
-%left '*' '/'
-%left NEG     /* negation--unary minus */
-%right '^'    /* exponentiation        */
-
-/* Grammar follows */
-%%
-input:
-  line
-| input line
-;
-
-line:
-  '\n'
-| exp '\n'    { System.out.println("total = "+$[]1); }
-| error '\n'
-;
-
-exp:
-  NUM                { $[]$ = $[]1;}
-| exp '=' exp
-  {
-    if ($[]1.intValue() != $[]3.intValue())
-      yyerror (]AT_LOCATION_IF([[@$,]])[ "calc: error: " + $[]1 + " != " + 
$[]3);
-  }
-| exp '+' exp
-    { $[]$ = new Integer ($[]1.intValue () + $[]3.intValue ());  }
-| exp '-' exp
-    { $[]$ = new Integer ($[]1.intValue () - $[]3.intValue ());  }
-| exp '*' exp
-    { $[]$ = new Integer ($[]1.intValue () * $[]3.intValue ());  }
-| exp '/' exp
-    { $[]$ = new Integer ($[]1.intValue () / $[]3.intValue ());  }
-| '-' exp  %prec NEG
-    { $[]$ = new Integer (-$[]2.intValue ());                    }
-| exp '^' exp
-    { $[]$ = new Integer ((int)Math.pow ($[]1.intValue (),
-                                         $[]3.intValue ()));     }
-| '(' exp ')'        { $[]$ = $[]2;}
-| '(' error ')'      { $[]$ = new Integer (1111);}
-| '!'                { $[]$ = new Integer (0); return YYERROR;}
-| '-' error          { $[]$ = new Integer (0); return YYERROR;}
-;
-])
-
-
-
-## ------------------------------------- ##
-## Calc parser with api.push-pull both.  ##
-## ------------------------------------- ##
-
-
-# Test that the states transitioned by the push parser are the
-# same as for the pull parser.  This test is assumed to work
-# if it produces the same partial trace of stack states as is
-# produced when using pull parsing.  The output is verbose,
-# but seems essential for verifying push parsing.
-
-AT_SETUP([Calc parser with api.push-pull both])
-AT_BISON_OPTION_PUSHDEFS
-
-# Define the calculator input.
-# Warning: if you changes the input file
-# then the locations test file position numbers
-# may be incorrect and you will have
-# to modify that file as well.
-
-AT_DATA([input],
-[[1 + 2 * 3 = 7
-1 + 2 * -3 = -5
-
--1^2 = -1
-(-1)^2 = 1
-
----1 = -1
-
-1 - 2 - 3 = -4
-1 - (2 - 3) = 2
-
-2^2^3 = 256
-(2^2)^3 = 64
-]])
-
-# Compose pieces to build the actual .y file.
-AT_DATA([Calc.y],
-[[/* Infix notation calculator--calc */
-%language "Java"
-
-%define api.parser.class {Calc}
-%define parse.trace
-
-%code {
-  static class UserLexer implements Calc.Lexer
-  {
-    StreamTokenizer st;
-    StringReader rdr;
-
-    public UserLexer(StringReader reader)
-    {
-      rdr = reader;
-      st = new StreamTokenizer(rdr);
-      st.resetSyntax();
-      st.eolIsSignificant(true);
-      st.whitespaceChars('\t', '\t');
-      st.whitespaceChars(' ', ' ');
-      st.wordChars('0', '9');
-    }
-
-    Integer yylval;
-
-    public Object getLVal() { return yylval; }
-
-    public void yyerror(String msg) { System.err.println(msg); }
-
-    public int yylex () throws IOException
-    {
-      switch (st.nextToken()) {
-      case StreamTokenizer.TT_EOF: return EOF;
-      case StreamTokenizer.TT_EOL: return (int) '\n';
-      case StreamTokenizer.TT_WORD:
-          yylval = new Integer (st.sval);
-          return NUM;
-      default: return st.ttype;
-      }
-    }
-  }
-}
-
-%code {
-  public static void main (String[] args)
-        throws IOException
-  {
-      StringReader reader = getinput(args[0]);
-      UserLexer lexer = new UserLexer(reader);
-      Calc calc = new Calc(lexer);
-      calc.setDebugLevel(1);
-      calc.parse();
-  }//main
-}
-
-]AT_CALC_BODY[
-
-]])
-
-# This data was captured from running a pull parser.
-AT_DATA([[expout]],[[Stack now 0
-Stack now 0 2
-Stack now 0 9
-Stack now 0 9 19
-Stack now 0 9 19 2
-Stack now 0 9 19 28
-Stack now 0 9 19 28 20
-Stack now 0 9 19 28 20 2
-Stack now 0 9 19 28 20 29
-Stack now 0 9 19 28
-Stack now 0 9
-Stack now 0 9 17
-Stack now 0 9 17 2
-Stack now 0 9 17 26
-Stack now 0 9
-Stack now 0 9 23
-Stack now 0 8
-Stack now 0 7
-Stack now 0 7 2
-Stack now 0 7 9
-Stack now 0 7 9 19
-Stack now 0 7 9 19 2
-Stack now 0 7 9 19 28
-Stack now 0 7 9 19 28 20
-Stack now 0 7 9 19 28 20 3
-Stack now 0 7 9 19 28 20 3 2
-Stack now 0 7 9 19 28 20 3 12
-Stack now 0 7 9 19 28 20 29
-Stack now 0 7 9 19 28
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 3
-Stack now 0 7 9 17 3 2
-Stack now 0 7 9 17 3 12
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 4
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 3
-Stack now 0 7 3 2
-Stack now 0 7 3 12
-Stack now 0 7 3 12 22
-Stack now 0 7 3 12 22 2
-Stack now 0 7 3 12 22 31
-Stack now 0 7 3 12
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 3
-Stack now 0 7 9 17 3 2
-Stack now 0 7 9 17 3 12
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 5
-Stack now 0 7 5 3
-Stack now 0 7 5 3 2
-Stack now 0 7 5 3 12
-Stack now 0 7 5 14
-Stack now 0 7 5 14 25
-Stack now 0 7 9
-Stack now 0 7 9 22
-Stack now 0 7 9 22 2
-Stack now 0 7 9 22 31
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 2
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 4
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 3
-Stack now 0 7 3 3
-Stack now 0 7 3 3 3
-Stack now 0 7 3 3 3 2
-Stack now 0 7 3 3 3 12
-Stack now 0 7 3 3 12
-Stack now 0 7 3 12
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 3
-Stack now 0 7 9 17 3 2
-Stack now 0 7 9 17 3 12
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 4
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 2
-Stack now 0 7 9
-Stack now 0 7 9 18
-Stack now 0 7 9 18 2
-Stack now 0 7 9 18 27
-Stack now 0 7 9
-Stack now 0 7 9 18
-Stack now 0 7 9 18 2
-Stack now 0 7 9 18 27
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 3
-Stack now 0 7 9 17 3 2
-Stack now 0 7 9 17 3 12
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 2
-Stack now 0 7 9
-Stack now 0 7 9 18
-Stack now 0 7 9 18 5
-Stack now 0 7 9 18 5 2
-Stack now 0 7 9 18 5 14
-Stack now 0 7 9 18 5 14 18
-Stack now 0 7 9 18 5 14 18 2
-Stack now 0 7 9 18 5 14 18 27
-Stack now 0 7 9 18 5 14
-Stack now 0 7 9 18 5 14 25
-Stack now 0 7 9 18 27
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 2
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 4
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 2
-Stack now 0 7 9
-Stack now 0 7 9 22
-Stack now 0 7 9 22 2
-Stack now 0 7 9 22 31
-Stack now 0 7 9 22 31 22
-Stack now 0 7 9 22 31 22 2
-Stack now 0 7 9 22 31 22 31
-Stack now 0 7 9 22 31
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 2
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 5
-Stack now 0 7 5 2
-Stack now 0 7 5 14
-Stack now 0 7 5 14 22
-Stack now 0 7 5 14 22 2
-Stack now 0 7 5 14 22 31
-Stack now 0 7 5 14
-Stack now 0 7 5 14 25
-Stack now 0 7 9
-Stack now 0 7 9 22
-Stack now 0 7 9 22 2
-Stack now 0 7 9 22 31
-Stack now 0 7 9
-Stack now 0 7 9 17
-Stack now 0 7 9 17 2
-Stack now 0 7 9 17 26
-Stack now 0 7 9
-Stack now 0 7 9 23
-Stack now 0 7 16
-Stack now 0 7
-Stack now 0 7 15
-]])
-
-AT_BISON_CHECK([PUSHPULLFLAG [-o Calc.java Calc.y]])
-
-AT_JAVA_COMPILE([[Calc.java]])
-# Verify that this is a push parser.
-AT_CHECK_JAVA_GREP([[Calc.java]],
-                   [[.*public void push_parse_initialize ().*]])
-# Capture stderr output for comparison purposes.
-AT_JAVA_PARSER_CHECK([Calc input], 0, [ignore-nolog], [stderr-nolog])
-# Extract the "Stack Now" lines from the error output,
-# send them to stdout (via the sed command) and compare to expout.
-# NOTE: because the target is "expout", this macro automatically
-# compares the output of the sed command with the contents of
-# the file "expout" (defined above).
-AT_CHECK([[sed -e '/^Stack now.*$/p' -e d ./stderr]],
-         [ignore], [expout], [ignore-nolog])
-AT_BISON_OPTION_POPDEFS
-AT_CLEANUP
-
-
-
-## ---------------------------------------------------------------- ##
-## Calc parser with %locations %code lexer and api.push-pull both.  ##
-## ---------------------------------------------------------------- ##
-
-
-# This test looks for location reporting by looking
-# at the lexer output with locations enabled.
-# It defines a lexer that reports location info.
-AT_SETUP([Calc parser with %locations %code lexer and api.push-pull both])
-AT_BISON_OPTION_PUSHDEFS
-
-AT_DATA([Calc.y],
-[[/* Infix notation calculator--calc.  */
-%language "Java"
-
-%define api.parser.class {Calc}
-%define parse.trace
-%lex-param { Reader rdr }
-%locations
-
-%code imports {
-  import java.io.*;
-}
-
-%code lexer {
-  StreamTokenizer st;
-  Integer yylval;
-
-  public YYLexer(Reader rdr)
-  {
-    st = new StreamTokenizer(rdr);
-    st.resetSyntax();
-    st.eolIsSignificant(true);
-    st.whitespaceChars('\t', '\t');
-    st.whitespaceChars(' ', ' ');
-    st.wordChars('0', '9');
-  }
-
-  Position yypos = new Position (1, 0);
-
-  public Position getStartPos() { return yypos; }
-
-  public Position getEndPos() { return yypos; }
-
-  public Object getLVal() { return yylval; }
-
-  public void yyerror(Location loc, String msg)
-  {
-    System.err.println(loc+":"+msg);
-  }
-
-  public int yylex () throws IOException
-  {
-    yypos = new Position (yypos.lineno (),yypos.token () + 1);
-    switch (st.nextToken()) {
-    case StreamTokenizer.TT_EOF:
-        return EOF;
-    case StreamTokenizer.TT_EOL:
-        yypos = new Position (yypos.lineno () + 1, 0);
-        return (int) '\n';
-    case StreamTokenizer.TT_WORD:
-        yylval = new Integer (st.sval);
-        return NUM;
-    default:
-      return st.ttype;
-    }
-  }
-}
-
-%code { ]AT_JAVA_POSITION_DEFINE_OLD[ }
-
-%code {
-  public static void main (String[] args)
-          throws IOException
-  {
-    StringReader reader = getinput(args[0]);
-    Calc calc = new Calc(reader);
-    calc.setDebugLevel(1);
-    calc.parse();
-  }
-}
-
-]AT_CALC_BODY[
-
-]])
-
-# Define the expected calculator output.
-# This should match the output from a pull parser.
-AT_DATA([output],[[total = 7
-total = -5
-total = -1
-total = 1
-total = -1
-total = -4
-total = 2
-total = 256
-total = 64
-]])
-
-AT_DATA([locations],[[Next token is token "number" (1.1: 1)
-Next token is token '+' (1.2: 1)
-Next token is token "number" (1.3: 2)
-Next token is token '*' (1.4: 2)
-Next token is token "number" (1.5: 3)
-Next token is token '=' (1.6: 3)
-Next token is token '=' (1.6: 3)
-Next token is token '=' (1.6: 3)
-Next token is token "number" (1.7: 7)
-Next token is token '\n' (2.0: 7)
-Next token is token '\n' (2.0: 7)
-Next token is token "number" (2.1: 1)
-Next token is token '+' (2.2: 1)
-Next token is token "number" (2.3: 2)
-Next token is token '*' (2.4: 2)
-Next token is token '-' (2.5: 2)
-Next token is token "number" (2.6: 3)
-Next token is token '=' (2.7: 3)
-Next token is token '=' (2.7: 3)
-Next token is token '=' (2.7: 3)
-Next token is token '=' (2.7: 3)
-Next token is token '-' (2.8: 3)
-Next token is token "number" (2.9: 5)
-Next token is token '\n' (3.0: 5)
-Next token is token '\n' (3.0: 5)
-Next token is token '\n' (3.0: 5)
-Next token is token '\n' (4.0: 5)
-Next token is token '-' (4.1: 5)
-Next token is token "number" (4.2: 1)
-Next token is token '^' (4.3: 1)
-Next token is token "number" (4.4: 2)
-Next token is token '=' (4.5: 2)
-Next token is token '=' (4.5: 2)
-Next token is token '=' (4.5: 2)
-Next token is token '-' (4.6: 2)
-Next token is token "number" (4.7: 1)
-Next token is token '\n' (5.0: 1)
-Next token is token '\n' (5.0: 1)
-Next token is token '\n' (5.0: 1)
-Next token is token '(' (5.1: 1)
-Next token is token '-' (5.2: 1)
-Next token is token "number" (5.3: 1)
-Next token is token ')' (5.4: 1)
-Next token is token ')' (5.4: 1)
-Next token is token '^' (5.5: 1)
-Next token is token "number" (5.6: 2)
-Next token is token '=' (5.7: 2)
-Next token is token '=' (5.7: 2)
-Next token is token "number" (5.8: 1)
-Next token is token '\n' (6.0: 1)
-Next token is token '\n' (6.0: 1)
-Next token is token '\n' (7.0: 1)
-Next token is token '-' (7.1: 1)
-Next token is token '-' (7.2: 1)
-Next token is token '-' (7.3: 1)
-Next token is token "number" (7.4: 1)
-Next token is token '=' (7.5: 1)
-Next token is token '=' (7.5: 1)
-Next token is token '=' (7.5: 1)
-Next token is token '=' (7.5: 1)
-Next token is token '-' (7.6: 1)
-Next token is token "number" (7.7: 1)
-Next token is token '\n' (8.0: 1)
-Next token is token '\n' (8.0: 1)
-Next token is token '\n' (8.0: 1)
-Next token is token '\n' (9.0: 1)
-Next token is token "number" (9.1: 1)
-Next token is token '-' (9.2: 1)
-Next token is token "number" (9.3: 2)
-Next token is token '-' (9.4: 2)
-Next token is token '-' (9.4: 2)
-Next token is token "number" (9.5: 3)
-Next token is token '=' (9.6: 3)
-Next token is token '=' (9.6: 3)
-Next token is token '-' (9.7: 3)
-Next token is token "number" (9.8: 4)
-Next token is token '\n' (10.0: 4)
-Next token is token '\n' (10.0: 4)
-Next token is token '\n' (10.0: 4)
-Next token is token "number" (10.1: 1)
-Next token is token '-' (10.2: 1)
-Next token is token '(' (10.3: 1)
-Next token is token "number" (10.4: 2)
-Next token is token '-' (10.5: 2)
-Next token is token "number" (10.6: 3)
-Next token is token ')' (10.7: 3)
-Next token is token ')' (10.7: 3)
-Next token is token '=' (10.8: 3)
-Next token is token '=' (10.8: 3)
-Next token is token "number" (10.9: 2)
-Next token is token '\n' (11.0: 2)
-Next token is token '\n' (11.0: 2)
-Next token is token '\n' (12.0: 2)
-Next token is token "number" (12.1: 2)
-Next token is token '^' (12.2: 2)
-Next token is token "number" (12.3: 2)
-Next token is token '^' (12.4: 2)
-Next token is token "number" (12.5: 3)
-Next token is token '=' (12.6: 3)
-Next token is token '=' (12.6: 3)
-Next token is token '=' (12.6: 3)
-Next token is token "number" (12.7: 256)
-Next token is token '\n' (13.0: 256)
-Next token is token '\n' (13.0: 256)
-Next token is token '(' (13.1: 256)
-Next token is token "number" (13.2: 2)
-Next token is token '^' (13.3: 2)
-Next token is token "number" (13.4: 2)
-Next token is token ')' (13.5: 2)
-Next token is token ')' (13.5: 2)
-Next token is token '^' (13.6: 2)
-Next token is token "number" (13.7: 3)
-Next token is token '=' (13.8: 3)
-Next token is token '=' (13.8: 3)
-Next token is token "number" (13.9: 64)
-Next token is token '\n' (14.0: 64)
-Next token is token '\n' (14.0: 64)
-Next token is token $end (14.1: 64)
-]])
-
-# Define the calculator input.
-# Warning: if you changes the input file
-# then the locations test file position numbers
-# may be incorrect and you will have
-# to modify that file as well.
-
-AT_DATA([input],
-[[1 + 2 * 3 = 7
-1 + 2 * -3 = -5
-
--1^2 = -1
-(-1)^2 = 1
-
----1 = -1
-
-1 - 2 - 3 = -4
-1 - (2 - 3) = 2
-
-2^2^3 = 256
-(2^2)^3 = 64
-]])
-
-AT_BISON_CHECK([PUSHPULLFLAG [-o Calc.java Calc.y]])
-AT_JAVA_COMPILE([[Calc.java]])
-# Verify that this is a push parser
-AT_CHECK_JAVA_GREP([[Calc.java]],
-                   [[.*public void push_parse_initialize ().*]])
-# Capture the  stdout and stderr output for comparison purposes.
-AT_JAVA_PARSER_CHECK([Calc input], 0, [stdout-nolog], [stderr-nolog])
-# 1. Check that the token locations are correct
-AT_CHECK([[cp -f ./locations ./expout]],[ignore],[ignore-nolog],[ignore-nolog])
-AT_CHECK([[sed -e '/^Next token.*$/p' -e d 
./stderr]],[ignore],[expout],[ignore-nolog])
-# 2. Check that the calculator output matches that of a pull parser
-AT_CHECK([[rm -f ./expout; cp -f ./output 
./expout]],[ignore],[ignore-nolog],[ignore-nolog])
-AT_CHECK([[cat ./stdout]],[ignore],[expout],[ignore-nolog])
-
-
-AT_BISON_OPTION_POPDEFS
-AT_CLEANUP
-- 
2.25.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]