Unit test for apihelper.py : API Helper « Utility « Python

Home
Python
1.2D
2.Application
3.Buildin Function
4.Class
5.Data Structure
6.Data Type
7.Database
8.Development
9.Dictionary
10.Event
11.Exception
12.File
13.Function
14.GUI Pmw
15.GUI Tk
16.Language Basics
17.List
18.Math
19.Network
20.String
21.System
22.Thread
23.Tuple
24.Utility
25.XML
Python » Utility » API HelperScreenshots 
Unit test for apihelper.py


"""Unit test for apihelper.py

This program is part of "Dive Into Python", a free Python book for
experienced programmers.  Visit http://diveintopython.org/ for the
latest version.
"""

__author__ = "Mark Pilgrim ([email protected])"
__version__ = "$Revision: 1.4 $"
__date__ = "$Date: 2004/05/05 21:57:19 $"
__copyright__ = "Copyright (c) 2001 Mark Pilgrim"
__license__ = "Python"

import unittest
import apihelper
import sys
from StringIO import StringIO

class Redirector(unittest.TestCase):
    def setUp(self):
        self.savestdout = sys.stdout
        self.redirect = StringIO()
        sys.stdout = self.redirect

    def tearDown(self):
        sys.stdout = self.savestdout

class 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()

           
       
Related examples in the same category
1.Cheap and simple API helper
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.