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
29
35
36
40
41
45
46
50
51
53
55 unittest.TestCase.setUp(self)
56 self.out = StringIO.StringIO()
57 self.err = StringIO.StringIO()
58 self.c = FakeCommand(stdout=self.out, stderr=self.err)
59 self.assertEquals(self.c.name, "fakecommand")
60
62 self.assertEquals(None, self.c.parse(['--help', ]))
63 lookFor = "%s " % self.c.subCommands.keys()[0]
64 self.failUnless(self.out.getvalue().find(lookFor) > -1,
65 "out %r does not contain %s" % (self.out.getvalue(), lookFor))
66
68 ret = self.c.parse([])
69 self.assertEquals(ret, 1)
70 self.failIf(self.out.getvalue(), "Should not get output")
71
72 out = self.err.getvalue()
73 self.failUnless(out[1:].startswith('sage:'),
74 "output %s does not start with U/usage" % out)
75
76
78
80 unittest.TestCase.setUp(self)
81 self.out = StringIO.StringIO()
82 self.err = StringIO.StringIO()
83 self.c = FakeSubCommand(stdout=self.out, stderr=self.err)
84 self.assertEquals(self.c.name, "fakesubcommand")
85
87 self.assertEquals(None, self.c.parse(['--help', ]))
88 lookFor = "%s " % self.c.subCommands.keys()[0]
89 self.failUnless(self.out.getvalue().find(lookFor) > -1,
90 "out %r does not contain %s" % (self.out.getvalue(), lookFor))
91
92
93 if __name__ == '__main__':
94 unittest.main()
95