1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 import os
21 import sys
22 import tempfile
23 import commands
24 import unittest
25 import StringIO
26
27 import command
28
33
37
41
45
48 unittest.TestCase.setUp(self)
49 self.out = StringIO.StringIO()
50 self.err = StringIO.StringIO()
51 self.c = FakeCommand(stdout=self.out, stderr=self.err)
52 self.assertEquals(self.c.name, "fakecommand")
53
55 self.assertEquals(0, self.c.parse(['--help', ]))
56 lookFor = "%s " % self.c.subCommands.keys()[0]
57 self.failUnless(self.out.getvalue().find(lookFor) > -1,
58 "out %r does not contain %s" % (self.out.getvalue(), lookFor))
59
61 ret = self.c.parse([])
62 self.assertEquals(ret, 1)
63 self.failIf(self.out.getvalue(), "Should not get output")
64
65 out = self.err.getvalue()
66 self.failUnless(out[1:].startswith('sage:'),
67 "output %s does not start with U/usage" % out)
68
71 unittest.TestCase.setUp(self)
72 self.out = StringIO.StringIO()
73 self.err = StringIO.StringIO()
74 self.c = FakeSubCommand(stdout=self.out, stderr=self.err)
75 self.assertEquals(self.c.name, "fakesubcommand")
76
78 self.assertEquals(0, self.c.parse(['--help', ]))
79 lookFor = "%s " % self.c.subCommands.keys()[0]
80 self.failUnless(self.out.getvalue().find(lookFor) > -1,
81 "out %r does not contain %s" % (self.out.getvalue(), lookFor))
82
83
84 if __name__ == '__main__':
85 unittest.main()
86