tests: save/restore Autotest special files when checking XML support.

Currently the test 248, "parse-gram.y: LALR = IELR", fails
BISON_TEST_XML is set.

* tests/local.at (AT_BISON_CHECK_XML): Belt: Save/restore files.
* tests/regression.at (parse-gram.y: LALR = IELR): Suspenders: Don't
rely on expout.
Each one of these changes suffices.
This commit is contained in:
Akim Demaille
2012-05-11 17:11:09 +02:00
parent 5192fd5d50
commit 035810ed2e
2 changed files with 10 additions and 6 deletions

View File

@@ -373,8 +373,9 @@ m4_if(m4_bregexp([$4], [: warning: ]), [-1], [],
# defined. It doesn't make sense to invoke this macro if Bison is expected to # defined. It doesn't make sense to invoke this macro if Bison is expected to
# have a non-zero exit status. # have a non-zero exit status.
m4_define([AT_BISON_CHECK_XML], m4_define([AT_BISON_CHECK_XML],
[[if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then [[if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then]
mkdir xml-tests] AT_SAVE_SPECIAL_FILES
[mkdir xml-tests]
m4_pushdef([AT_BISON_ARGS], m4_pushdef([AT_BISON_ARGS],
[m4_bpatsubsts([[$1]], [m4_bpatsubsts([[$1]],
[--report(-file)?=[^][ ]*], [], [--report(-file)?=[^][ ]*], [],
@@ -396,8 +397,9 @@ m4_define([AT_BISON_CHECK_XML],
AT_CHECK([[$XSLTPROC \ AT_CHECK([[$XSLTPROC \
`]]AT_QUELL_VALGRIND[[ bison --print-datadir`/xslt/xml2dot.xsl \ `]]AT_QUELL_VALGRIND[[ bison --print-datadir`/xslt/xml2dot.xsl \
xml-tests/test.xml]], [[0]], [expout]) xml-tests/test.xml]], [[0]], [expout])
[rm -rf xml-tests expout [rm -rf xml-tests expout]
fi]]) AT_RESTORE_SPECIAL_FILES
[fi]])
# AT_QUELL_VALGRIND # AT_QUELL_VALGRIND
# ----------------- # -----------------

View File

@@ -1266,10 +1266,12 @@ AT_SETUP([[parse-gram.y: LALR = IELR]])
# have the same name. # have the same name.
[cp $abs_top_srcdir/src/parse-gram.y input.y] [cp $abs_top_srcdir/src/parse-gram.y input.y]
AT_BISON_CHECK([[-o input.c -Dlr.type=lalr input.y]]) AT_BISON_CHECK([[-o input.c -Dlr.type=lalr input.y]])
[mv input.c expout] [mv input.c lalr.c]
AT_CAPTURE_FILE([lalr.c])
AT_BISON_CHECK([[-o input.c -Dlr.type=ielr input.y]]) AT_BISON_CHECK([[-o input.c -Dlr.type=ielr input.y]])
[mv input.c ielr.c] [mv input.c ielr.c]
AT_CHECK([[cat ielr.c]], [[0]], [[expout]]) AT_CAPTURE_FILE([ielr.c])
AT_CHECK([[diff lalr.c ielr.c]], [[0]])
AT_CLEANUP AT_CLEANUP