~pwlars/lava-test/lp660538

« back to all changes in this revision

Viewing changes to tests/test_abrektestrunner.py

  • Committer: Paul Larson
  • Date: 2010-09-21 22:39:58 UTC
  • mto: This revision was merged to the branch mainline in revision 34.
  • Revision ID: paul.larson@canonical.com-20100921223958-svhx234e4apsaxsw
Add tests for the new quiet option when running tests

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
from datetime import datetime
21
21
 
22
22
from abrek.testdef import AbrekTestRunner
23
 
 
24
 
 
25
 
class testAbrekTestInstaller(unittest.TestCase):
 
23
from imposters import OutputImposter
 
24
from fixtures import TestCaseWithFixtures
 
25
 
 
26
def makerunner(**kwargs):
 
27
    return AbrekTestRunner(**kwargs)
 
28
 
 
29
class testAbrekTestRunner(unittest.TestCase):
26
30
    def setUp(self):
27
31
        self.origdir = os.path.abspath(os.curdir)
28
32
        self.tmpdir = tempfile.mkdtemp()
33
37
        os.chdir(self.origdir)
34
38
        shutil.rmtree(self.tmpdir)
35
39
 
36
 
    def makerunner(self,**kwargs):
37
 
        return AbrekTestRunner(**kwargs)
38
 
 
39
40
    def test_starttime(self):
40
 
        runner = self.makerunner()
 
41
        runner = makerunner()
41
42
        runner.run(self.tmpdir)
42
43
        self.assertTrue(isinstance(runner.starttime, datetime))
43
44
 
44
45
    def test_endtime(self):
45
 
        runner = self.makerunner()
 
46
        runner = makerunner()
46
47
        runner.run(self.tmpdir)
47
48
        self.assertTrue(isinstance(runner.endtime, datetime))
48
49
 
49
50
    def test_timediff(self):
50
51
        steps = ['sleep 2']
51
 
        runner = self.makerunner(steps=steps)
 
52
        runner = makerunner(steps=steps)
52
53
        runner.run(self.tmpdir)
53
54
        self.assertNotEqual(runner.starttime, runner.endtime)
54
55
 
55
56
    def test_runsteps(self):
56
57
        steps = ["echo test > foo"]
57
 
        runner = self.makerunner(steps=steps)
 
58
        runner = makerunner(steps=steps)
58
59
        runner._runsteps(self.tmpdir)
59
60
        self.assertTrue(os.path.exists("./foo"))
60
61
 
61
62
    def test_logoutput(self):
62
63
        steps = ["echo test > foo"]
63
 
        runner = self.makerunner(steps=steps)
 
64
        runner = makerunner(steps=steps)
64
65
        runner._runsteps(self.tmpdir)
65
66
        self.assertTrue(os.path.exists("./testoutput.log"))
 
67
 
 
68
class testAbrekTestRunnerVerbosity(TestCaseWithFixtures):
 
69
    def setUp(self):
 
70
        super(testAbrekTestRunnerVerbosity, self).setUp()
 
71
        self.origdir = os.path.abspath(os.curdir)
 
72
        self.tmpdir = tempfile.mkdtemp()
 
73
        self.filename = os.path.abspath(__file__)
 
74
        os.chdir(self.tmpdir)
 
75
        self.out = self.add_fixture(OutputImposter())
 
76
 
 
77
    def tearDown(self):
 
78
        super(testAbrekTestRunnerVerbosity, self).tearDown()
 
79
        os.chdir(self.origdir)
 
80
        shutil.rmtree(self.tmpdir)
 
81
 
 
82
    def test_runsteps_quiet_true(self):
 
83
        steps = ["echo test"]
 
84
        runner = makerunner(steps=steps)
 
85
        runner._runsteps(self.tmpdir, quiet=True)
 
86
        self.assertEqual("", self.out.getvalue().strip())
 
87
 
 
88
    def test_runsteps_quiet_false(self):
 
89
        steps = ["echo test"]
 
90
        runner = makerunner(steps=steps)
 
91
        runner._runsteps(self.tmpdir, quiet=False)
 
92
        self.assertEqual("test", self.out.getvalue().strip())
 
93
 
 
94
    def test_run_quiet_true(self):
 
95
        steps = ["echo test"]
 
96
        runner = makerunner(steps=steps)
 
97
        runner.run(self.tmpdir, quiet=True)
 
98
        self.assertEqual("", self.out.getvalue().strip())
 
99
 
 
100
    def test_run_quiet_false(self):
 
101
        steps = ["echo test"]
 
102
        runner = makerunner(steps=steps)
 
103
        runner.run(self.tmpdir, quiet=False)
 
104
        self.assertEqual("test", self.out.getvalue().strip())