nmh-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Nmh-commits] nmh/test README runalltests runtest setup-test ...


From: Josh Bressers
Subject: [Nmh-commits] nmh/test README runalltests runtest setup-test ...
Date: Tue, 17 Apr 2007 01:02:09 +0000

CVSROOT:        /sources/nmh
Module name:    nmh
Changes by:     Josh Bressers <bress>   07/04/17 01:02:08

Added files:
        test           : README runalltests runtest setup-test 
                         teardown-test test-temp-dir 
        test/tests/folder: test-create test-total 
        test/tests/pick: test-pick 
        test/tests/scan: test-scan 

Log message:
        Initial checkin of a testsuite

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/nmh/test/README?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/runalltests?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/runtest?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/setup-test?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/teardown-test?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/test-temp-dir?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/tests/folder/test-create?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/tests/folder/test-total?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/tests/pick/test-pick?cvsroot=nmh&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/nmh/test/tests/scan/test-scan?cvsroot=nmh&rev=1.1

Patches:
Index: README
===================================================================
RCS file: README
diff -N README
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ README      17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,29 @@
+nmh unit test suite.
+
+The purpose of these tests is to verify the functionality of the nmh
+commands.  The goal of the suite is to create an environment where testing
+nmh commands is easy and useful.  Each test is a shell script, and is
+launched via the 'sh' command.
+
+The Suite is arranged as such:
+
+setup-test
+    Create the unit test framework.  This will re-generate your configure
+    script and make files.
+
+teardown-test
+    Remove the temporary files created as part of the unit tests.
+
+runtest
+    Run a single test.
+
+runalltests
+    Run all tests in the suite
+
+tests
+    Directory containing the tests.  All files found in this and all
+    subsequent directories which have the name test-* will be treated as a
+    single test.
+
+Complex tests may be given their own directory as long as there is a file
+named 'test-*' in the directory which will launch the test.

Index: runalltests
===================================================================
RCS file: runalltests
diff -N runalltests
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runalltests 17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+for i in `find tests -name 'test-*' -type f`;
+do
+    ./runtest $i
+done

Index: runtest
===================================================================
RCS file: runtest
diff -N runtest
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtest     17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+export MH=`cat test-temp-dir`/mh_profile
+export MH_TEST_DIR=`cat test-temp-dir`
+export PATH=$MH_TEST_DIR/bin:$PATH
+
+/bin/sh $1
+
+return_value=$?
+
+if [ $return_value -eq 0 ] ; then
+    echo Test $1 PASS
+else
+    echo Test $1 FAIL
+fi

Index: setup-test
===================================================================
RCS file: setup-test
diff -N setup-test
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ setup-test  17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+TEMPDIR=`mktemp -d /tmp/nmh-test-XXXXXXXX`
+echo $TEMPDIR > test-temp-dir
+
+pushd ..
+aclocal
+autoheader
+autoconf
+./configure --prefix=$TEMPDIR --with-locking=fcntl
+make install
+
+echo "Path: $TEMPDIR/Mail" > $TEMPDIR/mh_profile
+mkdir $TEMPDIR/Mail
+
+MH=$TEMPDIR/mh_profile $TEMPDIR/bin/folder -create +inbox
+
+for i in `seq 1 10`;
+do
+    cat > $TEMPDIR/Mail/inbox/$i <<EOF
+From: Test$i <address@hidden>
+To: Some User <address@hidden>
+Date: Fri, 29 Sep 2006 00:00:00
+Subject: Testing message $i
+
+This is message number $i
+EOF
+done
+
+popd

Index: teardown-test
===================================================================
RCS file: teardown-test
diff -N teardown-test
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ teardown-test       17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+rm -rf `cat test-temp-dir`
+rm -f test-temp-dir

Index: test-temp-dir
===================================================================
RCS file: test-temp-dir
diff -N test-temp-dir
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ test-temp-dir       17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1 @@
+/tmp/nmh-test-rWzU1325

Index: tests/folder/test-create
===================================================================
RCS file: tests/folder/test-create
diff -N tests/folder/test-create
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ tests/folder/test-create    17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,20 @@
+#!/bin/sh
+######################################################
+#
+# Test the creation and removal of a folder.
+#
+######################################################
+
+BINDIR=$MH_TEST_DIR/bin
+
+
+folder -create +testfolder > /dev/null
+if [ ! -d "$MH_TEST_DIR/Mail/testfolder" ]; then
+    exit 1
+fi
+
+rmf +testfolder > /dev/null
+if [ -d "$MH_TEST_DIR/Mail/testfolder" ]; then
+    # Test failed
+    exit 1
+fi

Index: tests/folder/test-total
===================================================================
RCS file: tests/folder/test-total
diff -N tests/folder/test-total
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ tests/folder/test-total     17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,14 @@
+#!/bin/sh
+######################################################
+#
+# Test the -total switch
+#
+######################################################
+
+BINDIR=$MH_TEST_DIR/bin
+
+
+output=`folder -total +inbox`
+if test x"$output" != x'TOTAL = 10 messages in 1 folder.' ; then
+    exit 1
+fi

Index: tests/pick/test-pick
===================================================================
RCS file: tests/pick/test-pick
diff -N tests/pick/test-pick
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ tests/pick/test-pick        17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exit 1

Index: tests/scan/test-scan
===================================================================
RCS file: tests/scan/test-scan
diff -N tests/scan/test-scan
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ tests/scan/test-scan        17 Apr 2007 01:02:08 -0000      1.1
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+expected_text="   1  09/29*Test1              Testing message 1<<This is 
message number 1 >>
+   2  09/29*Test2              Testing message 2<<This is message number 2 >>
+   3  09/29*Test3              Testing message 3<<This is message number 3 >>
+   4  09/29*Test4              Testing message 4<<This is message number 4 >>
+   5  09/29*Test5              Testing message 5<<This is message number 5 >>
+   6  09/29*Test6              Testing message 6<<This is message number 6 >>
+   7  09/29*Test7              Testing message 7<<This is message number 7 >>
+   8  09/29*Test8              Testing message 8<<This is message number 8 >>
+   9  09/29*Test9              Testing message 9<<This is message number 9 >>
+  10  09/29*Test10             Testing message 10<<This is message number 10 
>>"
+
+output=`scan -width 80 +inbox`
+
+if test x"$output" != x"$expected_text" ; then
+    exit 1
+fi




reply via email to

[Prev in Thread] Current Thread [Next in Thread]