From: Peter Avalos Date: Tue, 15 Jan 2013 06:26:10 +0000 (-0800) Subject: Add regression tests for m4. X-Git-Tag: v3.4.0rc~499 X-Git-Url: https://gitweb.dragonflybsd.org/~tuxillo/dragonfly.git/commitdiff_plain/9b9cf381ce6afc9eff34a6591ec00faa7aa03476 Add regression tests for m4. Obtained-from: FreeBSD --- diff --git a/tools/regression/usr.bin/m4/Makefile b/tools/regression/usr.bin/m4/Makefile new file mode 100644 index 0000000000..f7ee94626e --- /dev/null +++ b/tools/regression/usr.bin/m4/Makefile @@ -0,0 +1,4 @@ +# $FreeBSD: src/tools/regression/usr.bin/m4/Makefile,v 1.5 2012/11/17 01:53:58 svnexp Exp $ + +all: + @m4 ${.CURDIR}/../regress.m4 ${.CURDIR}/regress.sh | sh /dev/stdin ${.CURDIR} diff --git a/tools/regression/usr.bin/m4/args.m4 b/tools/regression/usr.bin/m4/args.m4 new file mode 100644 index 0000000000..906b823523 --- /dev/null +++ b/tools/regression/usr.bin/m4/args.m4 @@ -0,0 +1,9 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/args.m4,v 1.2 2012/11/17 01:53:58 svnexp Exp $ +dnl $OpenBSD: src/regress/usr.bin/m4/args.m4,v 1.1 2001/10/10 23:23:59 espie Exp $ +dnl Expanding all arguments +define(`A', `first form: $@, second form $*')dnl +define(`B', `C')dnl +A(1,2,`B') +dnl indirection means macro can get called with argc == 2 ! +indir(`A',1,2,`B') +indir(`A') diff --git a/tools/regression/usr.bin/m4/args2.m4 b/tools/regression/usr.bin/m4/args2.m4 new file mode 100644 index 0000000000..0f290cc1b9 --- /dev/null +++ b/tools/regression/usr.bin/m4/args2.m4 @@ -0,0 +1,5 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/args2.m4,v 1.2 2012/11/17 01:53:58 svnexp Exp $ +dnl $OpenBSD: src/regress/usr.bin/m4/args2.m4,v 1.1 2008/08/16 09:57:12 espie Exp $ +dnl Preserving spaces within nested parentheses +define(`foo',`$1')dnl +foo(( check for embedded spaces)) diff --git a/tools/regression/usr.bin/m4/comments.m4 b/tools/regression/usr.bin/m4/comments.m4 new file mode 100644 index 0000000000..f0940054e4 --- /dev/null +++ b/tools/regression/usr.bin/m4/comments.m4 @@ -0,0 +1,59 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/comments.m4,v 1.2 2012/11/17 01:53:58 svnexp Exp $ +dnl $OpenBSD: src/regress/usr.bin/m4/comments.m4,v 1.1 2005/09/06 15:33:21 espie Exp $ +dnl checking the way changecom works. +1: normal +define(`comment', `COMMENT')dnl +define(`p', 'XXX')dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +2: `changecom(>>)dnl' +changecom(>>)dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +3: `changecom dnl' +changecom dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +4: `changecom()dnl' +changecom()dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +5: `changecom(,)dnl' +changecom(,)dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +6: `changecom(`p',q)dnl' +changecom(`p',q)dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +7: `changecom(`p')dnl' +changecom(`p')dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too + +8: `changecom(#)dnl' +changecom(#)dnl +# this is a comment +>> this is a comment +p this is a comment +p this is a comment q comment too diff --git a/tools/regression/usr.bin/m4/esyscmd.m4 b/tools/regression/usr.bin/m4/esyscmd.m4 new file mode 100644 index 0000000000..7c8a3e5bde --- /dev/null +++ b/tools/regression/usr.bin/m4/esyscmd.m4 @@ -0,0 +1,43 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/esyscmd.m4,v 1.2 2012/11/17 01:53:58 svnexp Exp $ +changequote(`{',`}')dnl +dnl +esyscmd({sh -c "m4<>>') +patsubst(`# This is a line to zap +# and a second line +keep this one', `^ *#.* +') +dnl Special case: empty regexp +patsubst(`empty regexp',`',`a ') diff --git a/tools/regression/usr.bin/m4/quotes.m4 b/tools/regression/usr.bin/m4/quotes.m4 new file mode 100644 index 0000000000..ce0309d01a --- /dev/null +++ b/tools/regression/usr.bin/m4/quotes.m4 @@ -0,0 +1,58 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/quotes.m4,v 1.2 2012/11/17 01:53:59 svnexp Exp $ +dnl $OpenBSD: src/regress/usr.bin/m4/quotes.m4,v 1.2 2005/09/06 15:33:21 espie Exp $ +dnl Checking the way changequote() is supposed to work +define(`string',`STRING')dnl +1: normal +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' + +2: kill quotes +changequote()dnl +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' + +3: normal changed quote +changequote([,])dnl +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' + +4: empty quotes, kill them too +changequote(,)dnl +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' + +5: start quote only +changequote(`)dnl +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' + +6: normal quotes are back +changequote +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' + +7: start quote+empty end quote +changequote([,)dnl +`quoted string' +[quoted string] +normal string +`half quoted string +going up to that string' diff --git a/tools/regression/usr.bin/m4/redef.m4 b/tools/regression/usr.bin/m4/redef.m4 new file mode 100644 index 0000000000..e846c571f9 --- /dev/null +++ b/tools/regression/usr.bin/m4/redef.m4 @@ -0,0 +1,17 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/redef.m4,v 1.2 2012/11/17 01:53:59 svnexp Exp $ +dnl $OpenBSD: src/regress/usr.bin/m4/redef.m4,v 1.2 2001/09/27 22:40:58 espie Exp $ +dnl check all properties of builtin are passed on, including args behavior +define(`mybuiltin',defn(`builtin'))dnl +builtin mybuiltin +define(`mydefine',defn(`define'))dnl +mydefine(`mydefn',defn(`defn'))dnl +mydefine(`myundefine',mydefn(`undefine'))dnl +myundefine(`defn')dnl +myundefine(`define')dnl +myundefine(`undefine')dnl +mydefine(`mydef2',mydefn(`mydefine'))dnl +mydefine(`mydef', mydefn(`define'))dnl +myundefine(`mydefine')dnl +mydef2(`A',`B')dnl +mydef(`C',`D')dnl +A C diff --git a/tools/regression/usr.bin/m4/regress.args.out b/tools/regression/usr.bin/m4/regress.args.out new file mode 100644 index 0000000000..aaa890010a --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.args.out @@ -0,0 +1,3 @@ +first form: 1,2,B, second form 1,2,C +first form: 1,2,B, second form 1,2,C +first form: , second form diff --git a/tools/regression/usr.bin/m4/regress.args2.out b/tools/regression/usr.bin/m4/regress.args2.out new file mode 100644 index 0000000000..74bdbd6e59 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.args2.out @@ -0,0 +1 @@ +( check for embedded spaces) diff --git a/tools/regression/usr.bin/m4/regress.comments.out b/tools/regression/usr.bin/m4/regress.comments.out new file mode 100644 index 0000000000..157f107a8a --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.comments.out @@ -0,0 +1,47 @@ +1: normal +# this is a comment +>> this is a COMMENT +'XXX' this is a COMMENT +'XXX' this is a COMMENT q COMMENT too + +2: changecom(>>)dnl +# this is a COMMENT +>> this is a comment +'XXX' this is a COMMENT +'XXX' this is a COMMENT q COMMENT too + +3: changecom dnl + # this is a COMMENT +>> this is a COMMENT +'XXX' this is a COMMENT +'XXX' this is a COMMENT q COMMENT too + +4: changecom()dnl +# this is a COMMENT +>> this is a COMMENT +'XXX' this is a COMMENT +'XXX' this is a COMMENT q COMMENT too + +5: changecom(,)dnl +# this is a COMMENT +>> this is a COMMENT +'XXX' this is a COMMENT +'XXX' this is a COMMENT q COMMENT too + +6: changecom(`p',q)dnl +# this is a COMMENT +>> this is a COMMENT +p this is a comment +p this is a comment q COMMENT too + +7: changecom(`p')dnl +# this is a COMMENT +>> this is a COMMENT +p this is a comment +p this is a comment q comment too + +8: changecom(#)dnl +# this is a comment +>> this is a COMMENT +'XXX' this is a COMMENT +'XXX' this is a COMMENT q COMMENT too diff --git a/tools/regression/usr.bin/m4/regress.esyscmd.out b/tools/regression/usr.bin/m4/regress.esyscmd.out new file mode 100644 index 0000000000..89a1d06578 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.esyscmd.out @@ -0,0 +1,578 @@ + + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + +hi there a +hi there a + + diff --git a/tools/regression/usr.bin/m4/regress.eval.out b/tools/regression/usr.bin/m4/regress.eval.out new file mode 100644 index 0000000000..7298b3f438 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.eval.out @@ -0,0 +1,3 @@ +96 +255 +1 diff --git a/tools/regression/usr.bin/m4/regress.ff_after_dnl.out b/tools/regression/usr.bin/m4/regress.ff_after_dnl.out new file mode 100644 index 0000000000..8e51f1ea05 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.ff_after_dnl.out @@ -0,0 +1,2 @@ + THIS SHOULD SHOW UP (LINE 1) + THIS SHOULD SHOW UP (LINE 5) diff --git a/tools/regression/usr.bin/m4/regress.gnueval.out b/tools/regression/usr.bin/m4/regress.gnueval.out new file mode 100644 index 0000000000..6d7fd49ca2 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnueval.out @@ -0,0 +1,3 @@ +65536 +48 +-64 diff --git a/tools/regression/usr.bin/m4/regress.gnuformat.out b/tools/regression/usr.bin/m4/regress.gnuformat.out new file mode 100644 index 0000000000..3f484d61d4 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnuformat.out @@ -0,0 +1 @@ +a stringa%bpouet bctoolongcdtoolong2d diff --git a/tools/regression/usr.bin/m4/regress.gnupatterns.out b/tools/regression/usr.bin/m4/regress.gnupatterns.out new file mode 100644 index 0000000000..8e31103019 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnupatterns.out @@ -0,0 +1,3 @@ +string with a minus to replace with a minus +string with b to replbce with b b +minusstring with a starting + to replace with a minus diff --git a/tools/regression/usr.bin/m4/regress.gnupatterns2.out b/tools/regression/usr.bin/m4/regress.gnupatterns2.out new file mode 100644 index 0000000000..c45944ab60 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnupatterns2.out @@ -0,0 +1 @@ +acosl asinl atanl cosl sinl tanl coshl sinhl tanhl diff --git a/tools/regression/usr.bin/m4/regress.gnuprefix.out b/tools/regression/usr.bin/m4/regress.gnuprefix.out new file mode 100644 index 0000000000..186421d865 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnuprefix.out @@ -0,0 +1,46 @@ +`m4_ifelse' `m4_ifelse' +`m4_dnl' `m4_dnl' +`m4_expr' `m4_expr' +`m4_builtin' `m4_builtin' +`m4_popdef' `m4_popdef' +`m4_eval' `m4_eval' +`m4_len' `m4_len' +`m4_indir' `m4_indir' +`m4_sinclude' `m4_sinclude' +`m4_index' `m4_index' +`m4_traceoff' `m4_traceoff' +`m4___file__' `m4___file__' +`m4_unix' `m4_unix' +`m4_mkstemp' `m4_mkstemp' +`m4_changecom' `m4_changecom' +`m4_defn' `m4_defn' +`m4_decr' `m4_decr' +`m4_translit' `m4_translit' +`m4_patsubst' `m4_patsubst' +`m4_dumpdef' `m4_dumpdef' +`m4___line__' `m4___line__' +`m4_esyscmd' `m4_esyscmd' +`m4_traceon' `m4_traceon' +`m4_incr' `m4_incr' +`m4_shift' `m4_shift' +`m4_syscmd' `m4_syscmd' +`m4_include' `m4_include' +`m4_pushdef' `m4_pushdef' +`m4_paste' `m4_paste' +`m4_regexp' `m4_regexp' +`m4_changequote' `m4_changequote' +`m4_undivert' `m4_undivert' +`m4_m4exit' `m4_m4exit' +`m4_substr' `m4_substr' +`m4_m4wrap' `m4_m4wrap' +`m4_ifdef' `m4_ifdef' +`m4_sysval' `m4_sysval' +`m4_divert' `m4_divert' +`m4_maketemp' `m4_maketemp' +`m4_spaste' `m4_spaste' +`m4_define' `m4_define' +`m4_undefine' `m4_undefine' +`m4_divnum' `m4_divnum' +`m4_errprint' `m4_errprint' +dumpdef() + diff --git a/tools/regression/usr.bin/m4/regress.gnusofterror.out b/tools/regression/usr.bin/m4/regress.gnusofterror.out new file mode 100644 index 0000000000..8baef1b4ab --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnusofterror.out @@ -0,0 +1 @@ +abc diff --git a/tools/regression/usr.bin/m4/regress.gnutranslit2.out b/tools/regression/usr.bin/m4/regress.gnutranslit2.out new file mode 100644 index 0000000000..5c88e734a0 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.gnutranslit2.out @@ -0,0 +1,6 @@ +[HAVE_abc def h/] +[HAVE_abc~def~h/] +ABCDEFGHIJ +ABCDEFGHIJ +ABC-0980-ZYX +ABC-0980-ZYX diff --git a/tools/regression/usr.bin/m4/regress.includes.out b/tools/regression/usr.bin/m4/regress.includes.out new file mode 100644 index 0000000000..4a1f4754cf --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.includes.out @@ -0,0 +1 @@ +hello world diff --git a/tools/regression/usr.bin/m4/regress.m4wrap3.out b/tools/regression/usr.bin/m4/regress.m4wrap3.out new file mode 100644 index 0000000000..51b43f42d1 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.m4wrap3.out @@ -0,0 +1,4 @@ +normal m4 stuff +this is +a string +recurse diff --git a/tools/regression/usr.bin/m4/regress.patterns.out b/tools/regression/usr.bin/m4/regress.patterns.out new file mode 100644 index 0000000000..c273b589d7 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.patterns.out @@ -0,0 +1,6 @@ +quote \s in \string +>>>check whether subst +>>>over several lines +>>>works as expected +keep this one +a ea ma pa ta ya a ra ea ga ea xa p diff --git a/tools/regression/usr.bin/m4/regress.quotes.out b/tools/regression/usr.bin/m4/regress.quotes.out new file mode 100644 index 0000000000..fe5b8a4b45 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.quotes.out @@ -0,0 +1,49 @@ +m4: unclosed quote: + quotes.m4 at line 55 +1: normal +quoted string +[quoted STRING] +normal STRING +half quoted string +going up to that string + +2: kill quotes +`quoted STRING' +[quoted STRING] +normal STRING +`half quoted STRING +going up to that STRING' + +3: normal changed quote +`quoted STRING' +quoted string +normal STRING +`half quoted STRING +going up to that STRING' + +4: empty quotes, kill them too +`quoted STRING' +[quoted STRING] +normal STRING +`half quoted STRING +going up to that STRING' + +5: start quote only +quoted string'[quoted STRING] +normal STRING +half quoted stringgoing up to that STRING' + +6: normal quotes are back + +quoted string +[quoted STRING] +normal STRING +half quoted string +going up to that string + +7: start quote+empty end quote +`quoted STRING' +quoted string] +normal string +`half quoted string +going up to that string' diff --git a/tools/regression/usr.bin/m4/regress.redef.out b/tools/regression/usr.bin/m4/regress.redef.out new file mode 100644 index 0000000000..ee482f013a --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.redef.out @@ -0,0 +1,2 @@ +builtin mybuiltin +B C diff --git a/tools/regression/usr.bin/m4/regress.sh b/tools/regression/usr.bin/m4/regress.sh new file mode 100644 index 0000000000..070bc2c7e0 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.sh @@ -0,0 +1,31 @@ +# $FreeBSD: src/tools/regression/usr.bin/m4/regress.sh,v 1.6 2012/11/17 01:53:59 svnexp Exp $ + +LC_ALL=C; export LC_ALL + +echo 1..22 + +REGRESSION_START($1) + +REGRESSION_TEST(`args', `m4 args.m4') +REGRESSION_TEST(`args2', `m4 args2.m4') +REGRESSION_TEST(`comments', `m4 comments.m4') +REGRESSION_TEST(`esyscmd', `m4 esyscmd.m4') +REGRESSION_TEST(`eval', `m4 eval.m4') +REGRESSION_TEST(`ff_after_dnl', `uudecode -o /dev/stdout ff_after_dnl.m4.uu | m4') +REGRESSION_TEST(`gnueval', `m4 -g gnueval.m4') +REGRESSION_TEST(`gnuformat', `m4 -g gnuformat.m4') +REGRESSION_TEST(`gnupatterns', `m4 -g gnupatterns.m4') +REGRESSION_TEST(`gnupatterns2', `m4 -g gnupatterns2.m4') +REGRESSION_TEST(`gnuprefix', `m4 -P gnuprefix.m4 2>&1') +REGRESSION_TEST(`gnusofterror', `m4 -g gnusofterror.m4') +REGRESSION_TEST(`gnutranslit2', `m4 -g translit2.m4') +REGRESSION_TEST(`includes', `m4 -I. includes.m4') +REGRESSION_TEST(`m4wrap3', `m4 m4wrap3.m4') +REGRESSION_TEST(`patterns', `m4 patterns.m4') +REGRESSION_TEST(`quotes', `m4 quotes.m4 2>&1') +REGRESSION_TEST(`strangequotes', `uudecode -o /dev/stdout strangequotes.m4.uu | m4') +REGRESSION_TEST(`redef', `m4 redef.m4') +REGRESSION_TEST(`translit', `m4 translit.m4') +REGRESSION_TEST(`translit2', `m4 translit2.m4') + +REGRESSION_END() diff --git a/tools/regression/usr.bin/m4/regress.strangequotes.out b/tools/regression/usr.bin/m4/regress.strangequotes.out new file mode 100644 index 0000000000..f19297b582 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.strangequotes.out @@ -0,0 +1 @@ +4 to 5 diff --git a/tools/regression/usr.bin/m4/regress.t b/tools/regression/usr.bin/m4/regress.t new file mode 100644 index 0000000000..c703852302 --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.t @@ -0,0 +1,6 @@ +#!/bin/sh +# $FreeBSD: src/tools/regression/usr.bin/m4/regress.t,v 1.2 2012/11/17 01:53:59 svnexp Exp $ + +cd `dirname $0` + +sh regress.sh diff --git a/tools/regression/usr.bin/m4/regress.translit.out b/tools/regression/usr.bin/m4/regress.translit.out new file mode 100644 index 0000000000..54abdd3a6d --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.translit.out @@ -0,0 +1 @@ +onkp diff --git a/tools/regression/usr.bin/m4/regress.translit2.out b/tools/regression/usr.bin/m4/regress.translit2.out new file mode 100644 index 0000000000..5c561770fa --- /dev/null +++ b/tools/regression/usr.bin/m4/regress.translit2.out @@ -0,0 +1,6 @@ +[HAVE_abc def h/] +[HAVE_abc~def~h/] +ABCDEFGHIJ +A12345678J +ABC-0980-ZYX +Abc-0980-Zyx diff --git a/tools/regression/usr.bin/m4/strangequotes.m4.uu b/tools/regression/usr.bin/m4/strangequotes.m4.uu new file mode 100644 index 0000000000..8cd07d1977 --- /dev/null +++ b/tools/regression/usr.bin/m4/strangequotes.m4.uu @@ -0,0 +1,8 @@ +$FreeBSD: src/tools/regression/usr.bin/m4/strangequotes.m4.uu,v 1.2 2012/11/17 01:53:59 svnexp Exp $ +$OpenBSD: src/regress/usr.bin/m4/strangequotes.m4.uu,v 1.2 2001/09/19 19:15:08 espie Exp $ + +begin 644 strangequotes.m4 +M8VAA;F=E<75O=&4HJRR[*61N;`ID969I;F4HJT&[+""K)#$@=&\@)#*[*61N +*;`I!*#0L(#4I"F4H +` +end diff --git a/tools/regression/usr.bin/m4/translit.m4 b/tools/regression/usr.bin/m4/translit.m4 new file mode 100644 index 0000000000..e3af79ae91 --- /dev/null +++ b/tools/regression/usr.bin/m4/translit.m4 @@ -0,0 +1,4 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/translit.m4,v 1.2 2012/11/17 01:53:59 svnexp Exp $ +dnl $OpenBSD: src/regress/usr.bin/m4/translit.m4,v 1.1 2010/03/23 20:11:52 espie Exp $ +dnl first one should match, not second one +translit(`onk*', `**', `p_') diff --git a/tools/regression/usr.bin/m4/translit2.m4 b/tools/regression/usr.bin/m4/translit2.m4 new file mode 100644 index 0000000000..fcbe428142 --- /dev/null +++ b/tools/regression/usr.bin/m4/translit2.m4 @@ -0,0 +1,9 @@ +dnl $FreeBSD: src/tools/regression/usr.bin/m4/translit2.m4,v 1.2 2012/11/17 01:53:59 svnexp Exp $ +translit(`[HAVE_abc/def.h +]', ` +/.', `/ ') +translit(`[HAVE_abc/def.h=]', `=/.', `/~~') +translit(`0123456789', `0123456789', `ABCDEFGHIJ') +translit(`0123456789', `[0-9]', `[A-J]') +translit(`abc-0980-zyx', `abcdefghijklmnopqrstuvwxyz', `ABCDEFGHIJKLMNOPQRSTUVWXYZ') +translit(`abc-0980-zyx', `[a-z]', `[A-Z]')