Simple test for TOTALS.
[pspp] / tests / output / tex.at
index 0044e14df7a47aa43a4ae3e57a2527457d9ed659..1ee1681a359c3a246c21d13d989edf04532eb414 100644 (file)
@@ -27,6 +27,11 @@ AT_SETUP([tex glyphs])
 AT_CHECK([tex-glyphs pspp.tex], [0], [ignore], [ignore])
 
 AT_SKIP_IF([test "$TEX" = no])
+
+dnl  The wasy10 font and its associated .tex file must be installed.
+dnl  in order to run this test.  On Debian based systems this is found
+dnl  in the texlive-fonts-recommended package.
+AT_SKIP_IF([! kpsewhich wasyfont.tex])
 AT_CHECK([$TEX --halt-on-error pspp.tex], [0], [ignore])
 
 dnl There should be no overfull boxes
@@ -151,13 +156,16 @@ och den kallaste är juni, med 16 °C.[5] Genomsnittlig årsnederbörd är
 AT_CHECK([tex-strings -o pspp.tex sample-texts/*], [0], [ignore], [ignore])
 
 AT_SKIP_IF([test "$TEX" = no])
+AT_SKIP_IF([! kpsewhich wasyfont.tex])
 AT_CHECK([$TEX --halt-on-error pspp.tex], [0], [ignore])
 
 test -z "$at_arg_xdvi" || AT_CHECK([$at_arg_xdvi -s 3 pspp.dvi], [0], [ignore])
 
 AT_CLEANUP
 
-
+dnl Check that no line exceeds 79 characters
+m4_define([CHECK_MAX_LINE_LENGTH],
+[[(while IFS= read -r line; do max=$(( max > ${#line} ? max : ${#line} )); done; test $max -le 80)]][ < $1])
 
 AT_SETUP([tex simple example])
 
@@ -175,7 +183,7 @@ descriptives /score.
 
 
 AT_CHECK([pspp -O format=tex simple.sps], [0], [])
-AT_CHECK([test $(wc -L pspp.tex | awk '{print $1}') -le 80], [0], [ignore])
+AT_CHECK([CHECK_MAX_LINE_LENGTH([pspp.tex])],[0],[ignore])
 
 AT_SKIP_IF([test "$TEX" = no])
 AT_CHECK([$TEX --halt-on-error pspp.tex], [0], [ignore])
@@ -193,8 +201,9 @@ AT_CLEANUP
 
 AT_SETUP([tex another example])
 
-AT_CHECK([pspp -O format=tex $abs_top_srcdir/examples/regress.sps], [0], [])
-AT_CHECK([test $(wc -L pspp.tex | awk '{print $1}') -le 80], [0], [ignore])
+AT_CHECK([pspp -O format=tex "$abs_top_srcdir/examples/regress.sps"], [0], [])
+AT_CHECK([CHECK_MAX_LINE_LENGTH([pspp.tex])],[0],[ignore])
+
 
 AT_SKIP_IF([test "$TEX" = no])
 AT_CHECK([$TEX --halt-on-error pspp.tex], [0], [ignore])
@@ -228,7 +237,7 @@ correlations
 ])
 
 AT_CHECK([pspp -O format=tex footnote.sps], [0], [])
-AT_CHECK([test $(wc -L pspp.tex | awk '{print $1}') -le 80], [0], [ignore])
+AT_CHECK([CHECK_MAX_LINE_LENGTH([pspp.tex])],[0],[ignore])
 
 AT_SKIP_IF([test "$TEX" = no])
 AT_CHECK([$TEX --halt-on-error pspp.tex], [0], [ignore])
@@ -269,7 +278,7 @@ frequencies items.
 ])
 
 AT_CHECK([LC_ALL=C.UTF-8 pspp -O format=tex utf8.sps], [0], [])
-AT_CHECK([test $(wc -L pspp.tex | awk '{print $1}') -le 80], [0], [ignore])
+AT_CHECK([CHECK_MAX_LINE_LENGTH([pspp.tex])],[0],[ignore])
 
 dnl The string "??" should not be present in pspp.tex
 AT_CHECK([grep -F '??' pspp.tex], [1])
@@ -309,7 +318,7 @@ t-test /variables=score /group=group("this", "that").
 ])
 
 AT_CHECK([pspp -O format=tex t-test.sps], [0], [])
-AT_CHECK([test $(wc -L pspp.tex | awk '{print $1}') -le 80], [0], [ignore])
+AT_CHECK([CHECK_MAX_LINE_LENGTH([pspp.tex])],[0],[ignore])
 
 AT_SKIP_IF([test "$TEX" = no])
 AT_CHECK([$TEX --halt-on-error pspp.tex], [0], [ignore])