mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Automate regression testing of the XML/XSLT implementation. Discussed
starting at <http://lists.gnu.org/archive/html/bison-patches/2007-11/msg00021.html>. * configure.ac (XSLTPROC): New substitution. * Makefile.am (maintainer-xml-check): New phony target invoking... * tests/Makefile.am (maintainer-xml-check): ... this new phony target invoking make maintainer-check with BISON_TEST_XML=1. * tests/atlocal.in (XSLTPROC): New. * tests/local.at (AT_BISON_CHECK): New macro to (1) instruct Valgrind not to report reachable memory when Bison is expected to have a non-zero exit status and (2) to compare XML/XSLT output with --graph and --report=all output for every working grammar when BISON_TEST_XML=1. (AT_BISON_CHECK_NO_XML): Likewise, but skip XML checks. (AT_BISON_CHECK_XML): New. (AT_QUELL_VALGRIND): New. * tests/testsuite.at (ORIGINAL_AT_CHECK): Remove this and... (AT_CHECK): ... don't redefine this since this was the old way to quell Valgrind. * tests/actions.at: Rewrite all AT_CHECK invocations for bison as AT_BISON_CHECK invocations. * tests/c++.at: Likewise. * tests/calc.at: Likewise. * tests/conflicts.at: Likewise. * tests/cxx-type.at: Likewise. * tests/existing.at: Likewise. * tests/glr-regression.at: Likewise. * tests/headers.at: Likewise. * tests/input.at: Likewise. * tests/java.at: Likewise. * tests/output.at: Likewise. * tests/push.at: Likewise. * tests/reduce.at: Likewise. * tests/regression.at: Likewise. * tests/sets.at: Likewise. * tests/skeletons.at: Likewise. * tests/synclines.at: Likewise. * tests/torture.at: Likewise. (Big triangle): Use AT_BISON_CHECK_NO_XML instead since this grammar tends to hang xsltproc. (Big horizontal): Likewise.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
# Exercising Bison Grammar Sets. -*- Autotest -*-
|
||||
# Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001, 2002, 2005, 2007 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -76,7 +76,7 @@ AT_DATA([[input.y]],
|
||||
e: 'e' | /* Nothing */;
|
||||
]])
|
||||
|
||||
AT_CHECK([[bison --trace=sets input.y]], [], [], [stderr])
|
||||
AT_BISON_CHECK([[--trace=sets input.y]], [], [], [stderr])
|
||||
AT_EXTRACT_SETS([stderr], [sets])
|
||||
AT_CHECK([[cat sets]], [],
|
||||
[[DERIVES
|
||||
@@ -160,7 +160,7 @@ g: h;
|
||||
h: 'h';
|
||||
]])
|
||||
|
||||
AT_CHECK([[bison --trace=sets input.y]], [], [], [stderr])
|
||||
AT_BISON_CHECK([[--trace=sets input.y]], [], [], [stderr])
|
||||
|
||||
AT_CHECK([[sed -n 's/[ ]*$//;/^RTC: Firsts Output BEGIN/,/^RTC: Firsts Output END/p' stderr]], [],
|
||||
[[RTC: Firsts Output BEGIN
|
||||
@@ -206,7 +206,7 @@ exp:
|
||||
;
|
||||
]])
|
||||
|
||||
AT_CHECK([[bison --trace=sets input.y]], [], [], [stderr])
|
||||
AT_BISON_CHECK([[--trace=sets input.y]], [], [], [stderr])
|
||||
AT_EXTRACT_SETS([stderr], [sets])
|
||||
AT_CHECK([[cat sets]], [],
|
||||
[[DERIVES
|
||||
@@ -276,7 +276,7 @@ input:
|
||||
;
|
||||
]])
|
||||
|
||||
AT_CHECK([[bison -v -o input.c input.y]])
|
||||
AT_BISON_CHECK([[-v -o input.c input.y]])
|
||||
|
||||
# Get the final state in the parser.
|
||||
AT_CHECK([[sed -n 's/.*define YYFINAL *\([0-9][0-9]*\)/final state \1/p' input.c]],
|
||||
|
||||
Reference in New Issue
Block a user