From ad08c366a19e95d19e8ee5d66b050530339561e4 Mon Sep 17 00:00:00 2001 From: Richard Kettlewell Date: Wed, 21 Nov 2007 10:14:54 +0000 Subject: [PATCH] more automation of test logic --- tests/alltests | 24 ++++++++++++++++++++---- tests/dtest.py | 4 ++-- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/tests/alltests b/tests/alltests index 0d216f3..4e3f64d 100755 --- a/tests/alltests +++ b/tests/alltests @@ -18,12 +18,12 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 # USA # -import sys,re,os.path +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.match("top_srcdir *= *(.*)", l) + r = re.search("^top_srcdir *= *(.*)$", l) if r: top_srcdir = r.group(1) break @@ -32,10 +32,26 @@ if not top_srcdir: # Make sure that the test directory is on the module search path (so we can # find dtest and the tests themselves) -sys.path.insert(0, os.path.join(top_srcdir, "tests")) +testdir = os.path.join(top_srcdir, "tests") +sys.path.insert(0, testdir) import dtest -tests = ["nothing", "version"] +# The tests are all the *.py files in the test source directory that +# call dtest.run +tests = [] +for f in os.listdir(testdir): + 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 diff --git a/tests/dtest.py b/tests/dtest.py index b9862f4..937d83e 100644 --- a/tests/dtest.py +++ b/tests/dtest.py @@ -195,7 +195,7 @@ stopword the a an and to too in on of we i am as im for is username fred password fredpass allow fred fredpass -plugins ../plugins +plugins %s/plugins player *.mp3 execraw disorder-decode player *.ogg execraw disorder-decode player *.wav execraw disorder-decode @@ -204,6 +204,6 @@ tracklength *.mp3 disorder-tracklength tracklength *.ogg disorder-tracklength tracklength *.wav disorder-tracklength tracklength *.flac disorder-tracklength -""" % (testroot, testroot, testroot, testroot)) +""" % (testroot, testroot, testroot, testroot, top_builddir)) copyfile("%s/sounds/scratch.ogg" % top_srcdir, "%s/scratch.ogg" % testroot) -- 2.11.0