From: Richard Kettlewell Date: Sat, 3 May 2008 12:21:41 +0000 (+0100) Subject: Use Automake's simple test infrastructure for running Python-based X-Git-Tag: 4.0~84 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/commitdiff_plain/3ece470d21e4fcc14337db1d631290d5e7cd4959 Use Automake's simple test infrastructure for running Python-based tests. --- diff --git a/tests/Makefile.am b/tests/Makefile.am index ff6253d..6795672 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -26,11 +26,11 @@ disorder_udplog_SOURCES=udplog.c disorder_udplog_LDADD=$(LIBOBJS) ../lib/libdisorder.a disorder_udplog_DEPENDENCIES=../lib/libdisorder.a -check: - ${PYTHON} -u ${srcdir}/alltests +TESTS=cookie.py dbversion.py dump.py files.py play.py queue.py \ + recode.py search.py user-upgrade.py user.py clean-local: rm -rf testroot *.log *.pyc -EXTRA_DIST=alltests dtest.py dbversion.py search.py \ +EXTRA_DIST=dtest.py dbversion.py search.py \ queue.py dump.py play.py cookie.py user-upgrade.py user.py recode.py diff --git a/tests/alltests b/tests/alltests deleted file mode 100755 index 812b53a..0000000 --- a/tests/alltests +++ /dev/null @@ -1,67 +0,0 @@ -#! /usr/bin/env python -# -# This file is part of DisOrder. -# Copyright (C) 2007 Richard Kettlewell -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -# USA -# -import sys,re,os.path,os - -# Parse the makefile in the current directory to identify the source directory -top_srcdir = None -for l in file("Makefile"): - r = re.search("^top_srcdir *= *(.*)$", l) - if r: - top_srcdir = r.group(1) - break -if not top_srcdir: - fatal("cannot identify source directory") - -# Make sure that the test directory is on the module search path (so we can -# find dtest and the tests themselves) -testdir = os.path.join(top_srcdir, "tests") -sys.path.insert(0, testdir) -import dtest - -# The tests are all the *.py files in the test source directory that -# call dtest.run -tests = [] -for f in os.listdir(testdir): - if f == 'dtest.py': # special case - continue - r = re.search("^(.*)\\.py$", f) - if r is not None: - isTest = False - base = r.group(1) - for l in file(os.path.join(testdir, f)): - r = re.search("dtest\\.run", l) - if r is not None: - isTest = True - break - if isTest: - tests.append(base) -tests.sort() # let's have a consistent order - -for test in tests: - print "-------- Test '%s' --------" % test - dtest.run(test, report=False) - -print "%d tests" % dtest.tests -if dtest.failures: - print "%d failures" % dtest.failures - sys.exit(1) -else: - print "All tests OK" diff --git a/tests/cookie.py b/tests/cookie.py index 8a91829..21353b0 100755 --- a/tests/cookie.py +++ b/tests/cookie.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2007 Richard Kettlewell diff --git a/tests/dbversion.py b/tests/dbversion.py index 218e0c9..c93e1e8 100755 --- a/tests/dbversion.py +++ b/tests/dbversion.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2007, 2008 Richard Kettlewell diff --git a/tests/dump.py b/tests/dump.py index ff28a0f..c935f20 100755 --- a/tests/dump.py +++ b/tests/dump.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2007, 2008 Richard Kettlewell diff --git a/tests/files.py b/tests/files.py index 984c6cc..65211dc 100755 --- a/tests/files.py +++ b/tests/files.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2007, 2008 Richard Kettlewell diff --git a/tests/play.py b/tests/play.py index 0013d7e..35cc7a3 100755 --- a/tests/play.py +++ b/tests/play.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2007, 2008 Richard Kettlewell diff --git a/tests/queue.py b/tests/queue.py index dae37b4..a1ddedf 100755 --- a/tests/queue.py +++ b/tests/queue.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2007, 2008 Richard Kettlewell diff --git a/tests/recode.py b/tests/recode.py index 1539da0..d57db02 100755 --- a/tests/recode.py +++ b/tests/recode.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. # Copyright (C) 2008 Richard Kettlewell @@ -42,7 +42,7 @@ def test(): if sys.platform == "darwin": print "Sorry, cannot run this test on Darwin" # ...because local fs is always UTF-8 - return + sys.exit(77) dtest.start_daemon() dtest.create_user() dtest.rescan() diff --git a/tests/search.py b/tests/search.py index 1b86bea..556a24c 100755 --- a/tests/search.py +++ b/tests/search.py @@ -1,7 +1,7 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. -# Copyright (C) 2007 Richard Kettlewell +# Copyright (C) 2007, 2008 Richard Kettlewell # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/tests/user-upgrade.py b/tests/user-upgrade.py index 3bab581..ffd30ea 100755 --- a/tests/user-upgrade.py +++ b/tests/user-upgrade.py @@ -1,7 +1,7 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. -# Copyright (C) 2007 Richard Kettlewell +# Copyright (C) 2007, 2008 Richard Kettlewell # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/tests/user.py b/tests/user.py index 1f3a39f..4c4fa48 100755 --- a/tests/user.py +++ b/tests/user.py @@ -1,7 +1,7 @@ -#! /usr/bin/env python +#! /usr/bin/env python -u # # This file is part of DisOrder. -# Copyright (C) 2007 Richard Kettlewell +# Copyright (C) 2007, 2008 Richard Kettlewell # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by