X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Fcommand%2Ffile-label.sh;h=239a2754adca15efa2e084dd5062d0bed7a9aa07;hb=a27e454d1a65872d0b1147f320ba8cc42aa9275f;hp=37d3fb806c34d8b8e710f98abf5b7b014282e784;hpb=053e7ff6e0a45a25d5604b211e9c950fff50e75d;p=pspp diff --git a/tests/command/file-label.sh b/tests/command/file-label.sh index 37d3fb806c..239a2754ad 100755 --- a/tests/command/file-label.sh +++ b/tests/command/file-label.sh @@ -1,21 +1,31 @@ #!/bin/sh -# This program tests the FILE LABEL and DOCUMENT commands +# This program tests the FILE LABEL and DOCUMENT, and ADD DOCUMENT commands TEMPDIR=/tmp/pspp-tst-$$ TESTFILE=$TEMPDIR/`basename $0`.sps -here=`pwd`; +# ensure that top_builddir are absolute +if [ -z "$top_builddir" ] ; then top_builddir=. ; fi +if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi +top_builddir=`cd $top_builddir; pwd` +PSPP=$top_builddir/src/ui/terminal/pspp$EXEEXT # ensure that top_srcdir is absolute -cd $top_srcdir; top_srcdir=`pwd` +top_srcdir=`cd $top_srcdir; pwd` STAT_CONFIG_PATH=$top_srcdir/config export STAT_CONFIG_PATH +LANG=C +export LANG cleanup() { + if [ x"$PSPP_TEST_NO_CLEANUP" != x ] ; then + echo "NOT cleaning $TEMPDIR" + return ; + fi cd / rm -rf $TEMPDIR } @@ -68,18 +78,21 @@ add value labels x 1 'first label mark two'. /* Add a file label and a few documents. file label This is a test file label. document First line of a document -This is the second very long line of a document in an attempt to overflow the input buffer with a really long line -Note that the last line should end with a period: . +Second line of a document +The last line should end with a period: . + /* Display the documents. display documents. -display file label. /* undocumented feature of PSPP +display file label. + +ADD DOCUMENT 'Line one' 'Line two'. /* Save the active file then get it and display the documents again. save /OUTFILE='foo.save'. get /FILE='foo.save'. display documents. -display file label. /* undocumented feature of PSPP +display file label. /* There is an interesting interaction that occurs if the 'execute' /* command below. What happens is that an error message is output @@ -98,7 +111,7 @@ display documents. save /OUTFILE='foo.save'. get /FILE='foo.save'. display documents. -display file label. /* undocumented feature of PSPP +display file label. /* Done. @@ -106,48 +119,98 @@ EOF if [ $? -ne 0 ] ; then no_result ; fi activity="run program" -$SUPERVISOR $here/../src/pspp --testing-mode -o raw-ascii $TESTFILE +$SUPERVISOR $PSPP -o pspp.csv $TESTFILE if [ $? -ne 0 ] ; then no_result ; fi # We need to filter out the dates/times activity="date filter" -grep -v 'Document entered' $TEMPDIR/pspp.list > $TEMPDIR/pspp.filtered +sed 's/(Entered [^)]*)/(Entered )/' $TEMPDIR/pspp.csv > $TEMPDIR/pspp.filtered if [ $? -ne 0 ] ; then no_result ; fi activity="compare results" -perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.filtered -diff -b $TEMPDIR/pspp.filtered - <) + File label: + This is a test file label + Documents in the active file: - First line of a document - This is the second very long line of a document in an attempt to overflow the - Note that the last line should end with a period: . + +document First line of a document + +Second line of a document + +The last line should end with a period: . + +(Entered ) + +Line one + +Line two + +(Entered ) + File label: + This is a test file label + Documents in the active file: - First line of a document - This is the second very long line of a document in an attempt to overflow the - Note that the last line should end with a period: . - There should be another document now. + +document First line of a document + +Second line of a document + +The last line should end with a period: . + +(Entered ) + +Line one + +Line two + +(Entered ) + +document There should be another document now. + +(Entered ) + Documents in the active file: - First line of a document - This is the second very long line of a document in an attempt to overflow the - Note that the last line should end with a period: . - There should be another document now. + +document First line of a document + +Second line of a document + +The last line should end with a period: . + +(Entered ) + +Line one + +Line two + +(Entered ) + +document There should be another document now. + +(Entered ) + File label: + This is a test file label EOF if [ $? -ne 0 ] ; then fail ; fi