Unit test for apihelper.py,unitapihelper.py,'''Unit test


'''Unit test for apihelper.pyThis program is part of 'Dive Into Python', a free Python book forexperienced programmers.  Visit http://diveintopython.org/ for thelatest version.'''__author__ = 'Mark Pilgrim (mark@diveintopython.org)'__version__ = '$Revision: 1.4 $'__date__ = '$Date: 2004/05/05 21:57:19 $'__copyright__ = 'Copyright (c) 2001 Mark Pilgrim'__license__ = 'Python'import unittestimport apihelperimport sysfrom StringIO import StringIOclass Redirector(unittest.TestCase):    def setUp(self):        self.savestdout = sys.stdout        self.redirect = StringIO()        sys.stdout = self.redirect    def tearDown(self):        sys.stdout = self.savestdoutclass KnownValues(Redirector):    def testApiHelper(self):        '''info should return known result for apihelper'''        apihelper.info(apihelper)        self.redirect.seek(0)        self.assertEqual(self.redirect.read(),'''info       Print methods and doc strings. Takes module, class, list, dictionary, or string.''')class ParamChecks(Redirector):    def testSpacing(self):        '''info should honor spacing argument'''        apihelper.info(apihelper, spacing=20)        self.redirect.seek(0)        self.assertEqual(self.redirect.read(),'''info                 Print methods and doc strings. Takes module, class, list, dictionary, or string.''')    def testCollapse(self):        '''info should honor collapse argument'''        apihelper.info(apihelper, collapse=0)        self.redirect.seek(0)        self.assertEqual(self.redirect.read(),'''info       Print methods and doc strings.  Takes module, class, list, dictionary, or string.''')class BadInput(unittest.TestCase):    def testNoObject(self):        '''info should fail with no object'''        self.assertRaises(TypeError, apihelper.info, spacing=20)if __name__ == '__main__':    unittest.main()

评论关闭