#!/bin/sh # --------------------------------------------------------------------------- # TEST-REM # # This file runs an acceptance test for Remind. To use it, type: # sh test-rem OR make test # in the build directory. # # This file is part of REMIND. # Copyright (C) 1992-1997 Dianne Skoll # Copyright (C) 1999-2000 Roaring Penguin Software Inc. # --------------------------------------------------------------------------- DIR=`dirname $0` cd $DIR if test $? != 0 ; then echo "Unable to cd $DIR" >&2 exit 1 fi chmod 000 include_dir/04cantread.rem TEST_GETENV="foo bar baz" ; export TEST_GETENV echo "Test 1" > ../tests/test.out echo "" >> ../tests/test.out ../src/remind -e -dxte ../tests/test.rem 16 feb 1991 >> ../tests/test.out 2>&1 echo "" >> ../tests/test.out echo "Test 2" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -p -l ../tests/test2.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "" >> ../tests/test.out echo "Test 3" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -s ../tests/test2.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "" >> ../tests/test.out echo "Test 4" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -sa ../tests/test2.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "Test 5" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -p -l -b0 ../tests/test3.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "Test 6" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -p -l -b1 ../tests/test3.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "Test 7" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -p -l -b2 ../tests/test3.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "Test 8" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -df -p -l -b2 ../tests/include_dir 1 aug 2007 >> ../tests/test.out 2>&1 echo "Test 9" >> ../tests/test.out echo "" >> ../tests/test.out ../src/remind -df -p -l -b2 ../tests/nonexistent_include_dir 1 aug 2007 >> ../tests/test.out 2>&1 ../src/remind -df -p -l -b2 ../tests/include_dir_no_rems 1 aug 2007 >> ../tests/test.out 2>&1 ../src/remind -df -p -l -b2 ../tests/include_test.rem 1 aug 2007 >> ../tests/test.out 2>&1 chmod 644 include_dir/04cantread.rem echo "Color Test" >> ../tests/test.out ../src/remind -ccl ../tests/colors.rem 1 aug 2007 >> ../tests/test.out 2>&1 echo "MON WKDAY DAY across year test" >> ../tests/test.out echo 'REM Mon 29 Dec MSG x' | ../src/remind -dt - 1 Jan 2000 >> ../tests/test.out 2>&1 echo "Sort Test" >> ../tests/test.out (echo "REM AT 12:00 MSG Untimed"; echo "REM MSG Timed") | ../src/remind -q -gaaa - 1 Jan 2000 >> ../tests/test.out 2>&1 (echo "REM AT 12:00 MSG Untimed"; echo "REM MSG Timed") | ../src/remind -q -gaaad - 1 Jan 2000 >> ../tests/test.out 2>&1 echo "Purge Test" >> ../tests/test.out ../src/remind -j999 ../tests/purge_dir/f1.rem 3 Feb 2012 >> ../tests/test.out 2>&1 echo "F1" >> ../tests/test.out cat ../tests/purge_dir/f1.rem.purged >> ../tests/test.out echo "F2" >> ../tests/test.out cat ../tests/purge_dir/f2.rem.purged >> ../tests/test.out echo "F3" >> ../tests/test.out cat ../tests/purge_dir/f3.rem.purged >> ../tests/test.out rm -f ../tests/purge_dir/*.rem.purged >> ../tests/test.out 2>&1 ../src/remind ../tests/runtest.rem >> ../tests/test.out 2>&1 ../src/remind -p ../tests/shade.rem 1 August 2009 | ../src/rem2ps -e -l -c3 >> ../tests/test.out 2>&1 # The sun tests can fail due to math roundoff error changing the times # by a minute... # ../src/remind -p12 ../tests/sun.rem 1 Jan 2011 >> ../tests/test.out 2>&1 # Test -a vs -aa ../src/remind -q -a - 1 Jan 2012 9:00 <<'EOF' >> ../tests/test.out 2>&1 REM 1 Jan 2012 AT 8:00 MSG 8am: Should not show up REM 1 Jan 2012 AT 9:00 MSG 9am: Should not show up REM 1 Jan 2012 AT 10:00 MSG 10am: Should not show up MSG [$DontTrigAts] EOF ../src/remind -q -a -a - 1 Jan 2012 9:00 <<'EOF' >> ../tests/test.out 2>&1 REM 1 Jan 2012 AT 8:00 MSG 8am: Should not show up REM 1 Jan 2012 AT 9:00 MSG 9am: Should show up REM 1 Jan 2012 AT 10:00 MSG 10am: Should show up MSG [$DontTrigAts] EOF cmp -s ../tests/test.out ../tests/test.cmp if [ "$?" = "0" ]; then echo "Remind: Acceptance test PASSED" exit 0 else echo "Remind: Acceptance test FAILED" echo "" echo "Examine the file test.out to see where it differs from the" echo "reference file test.cmp." exit 1 fi