--- /dev/null
+import subprocess
+from pytest import raises
+
+
+class Script(object):
+ script_name = 'teuthology'
+
+ def test_help(self):
+ args = (self.script_name, '--help')
+ out = subprocess.check_output(args)
+ assert out.startswith('usage')
+
+ def test_invalid(self):
+ args = (self.script_name, 'INVALID')
+ with raises(subprocess.CalledProcessError):
+ subprocess.check_call(args)
--- /dev/null
+from script import Script
+
+
+class TestCoverage(Script):
+ script_name = 'teuthology-coverage'
--- /dev/null
+from script import Script
+
+
+class TestLock(Script):
+ script_name = 'teuthology-lock'
--- /dev/null
+from script import Script
+
+
+class TestLs(Script):
+ script_name = 'teuthology-ls'
--- /dev/null
+from script import Script
+
+
+class TestNuke(Script):
+ script_name = 'teuthology-nuke'
--- /dev/null
+from script import Script
+
+
+class TestReport(Script):
+ script_name = 'teuthology-report'
--- /dev/null
+from script import Script
+
+
+class TestResults(Script):
+ script_name = 'teuthology-results'
--- /dev/null
+from script import Script
+
+
+class TestRun(Script):
+ script_name = 'teuthology'
--- /dev/null
+from script import Script
+
+
+class TestSchedule(Script):
+ script_name = 'teuthology-schedule'
--- /dev/null
+from script import Script
+
+
+class TestSuite(Script):
+ script_name = 'teuthology-suite'
--- /dev/null
+from script import Script
+import subprocess
+from pytest import raises
+
+
+class TestUpdatekeys(Script):
+ script_name = 'teuthology-updatekeys'
+
+ def test_all_and_targets(self):
+ args = (self.script_name, '-a', '-t', 'foo')
+ with raises(subprocess.CalledProcessError):
+ subprocess.check_call(args)
+
+ def test_no_args(self):
+ with raises(subprocess.CalledProcessError):
+ subprocess.check_call(self.script_name)
--- /dev/null
+from script import Script
+
+
+class TestWorker(Script):
+ script_name = 'teuthology-worker'
fudge
nose
-commands=py.test -v {posargs:teuthology}
+commands=py.test -v {posargs:teuthology scripts}
[testenv:flake8]
deps=
flake8
-commands=flake8 --select=F {posargs:teuthology}
+commands=flake8 --select=F {posargs:teuthology scripts}