From: Brian Warner Date: Tue, 24 Apr 2007 04:28:19 +0000 (-0700) Subject: test_runner.py: improve test coverage a little bit X-Git-Url: https://git.rkrishnan.org/Site/Content/Exhibitors/banana.xhtml?a=commitdiff_plain;h=813fdd70da79b961de909e37de81489526020b9f;p=tahoe-lafs%2Ftahoe-lafs.git test_runner.py: improve test coverage a little bit --- diff --git a/src/allmydata/scripts/runner.py b/src/allmydata/scripts/runner.py index 81764e49..70d2d997 100644 --- a/src/allmydata/scripts/runner.py +++ b/src/allmydata/scripts/runner.py @@ -95,11 +95,13 @@ class Options(usage.Options): if not hasattr(self, 'subOptions'): raise usage.UsageError("must specify a command") -def runner(argv): +def runner(argv, run_by_human=True): config = Options() try: config.parseOptions(argv) except usage.error, e: + if not run_by_human: + raise print "%s: %s" % (sys.argv[0], e) print c = getattr(config, 'subOptions', config) diff --git a/src/allmydata/test/test_runner.py b/src/allmydata/test/test_runner.py index e844e2c9..167e36a9 100644 --- a/src/allmydata/test/test_runner.py +++ b/src/allmydata/test/test_runner.py @@ -1,6 +1,7 @@ from twisted.trial import unittest +from twisted.python import usage import os.path from allmydata.scripts import runner from allmydata.util import fileutil @@ -19,6 +20,22 @@ class CreateNode(unittest.TestCase): self.failUnless(os.path.exists(c1)) self.failUnless(os.path.exists(os.path.join(c1, "client.tac"))) + c2 = os.path.join(basedir, "c2") + argv = ["create-client", "--quiet", c2] + runner.runner(argv) + self.failUnless(os.path.exists(c2)) + self.failUnless(os.path.exists(os.path.join(c2, "client.tac"))) + + self.failUnlessRaises(usage.UsageError, + runner.runner, + ["create-client", "basedir", "extraarg"], + run_by_human=False) + + self.failUnlessRaises(usage.UsageError, + runner.runner, + ["create-client"], + run_by_human=False) + def test_introducer(self): basedir = self.workdir("test_introducer") c1 = os.path.join(basedir, "c1") @@ -27,3 +44,25 @@ class CreateNode(unittest.TestCase): self.failUnless(os.path.exists(c1)) self.failUnless(os.path.exists(os.path.join(c1, "introducer.tac"))) + c2 = os.path.join(basedir, "c2") + argv = ["create-introducer", "--quiet", c2] + runner.runner(argv) + self.failUnless(os.path.exists(c2)) + self.failUnless(os.path.exists(os.path.join(c2, "introducer.tac"))) + + self.failUnlessRaises(usage.UsageError, + runner.runner, + ["create-introducer", "basedir", "extraarg"], + run_by_human=False) + + self.failUnlessRaises(usage.UsageError, + runner.runner, + ["create-introducer"], + run_by_human=False) + + def test_subcommands(self): + self.failUnlessRaises(usage.UsageError, + runner.runner, + [], + run_by_human=False) +