symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/test___all__.py
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 import unittest
       
     2 from test.test_support import run_unittest
       
     3 import sys
       
     4 import warnings
       
     5 
       
     6 
       
     7 
       
     8 class AllTest(unittest.TestCase):
       
     9 
       
    10     def check_all(self, modname):
       
    11         names = {}
       
    12         with warnings.catch_warnings():
       
    13             warnings.filterwarnings("ignore", ".* (module|package)",
       
    14                                     DeprecationWarning)
       
    15             try:
       
    16                 exec "import %s" % modname in names
       
    17             except ImportError:
       
    18                 # Silent fail here seems the best route since some modules
       
    19                 # may not be available in all environments.
       
    20                 return
       
    21         self.failUnless(hasattr(sys.modules[modname], "__all__"),
       
    22                         "%s has no __all__ attribute" % modname)
       
    23         names = {}
       
    24         exec "from %s import *" % modname in names
       
    25         if "__builtins__" in names:
       
    26             del names["__builtins__"]
       
    27         keys = set(names)
       
    28         all = set(sys.modules[modname].__all__)
       
    29         self.assertEqual(keys, all)
       
    30 
       
    31     def test_all(self):
       
    32         if not sys.platform.startswith('java'):
       
    33             # In case _socket fails to build, make this test fail more gracefully
       
    34             # than an AttributeError somewhere deep in CGIHTTPServer.
       
    35             import _socket
       
    36 
       
    37         self.check_all("BaseHTTPServer")
       
    38         self.check_all("Bastion")
       
    39         self.check_all("CGIHTTPServer")
       
    40         self.check_all("ConfigParser")
       
    41         self.check_all("Cookie")
       
    42         self.check_all("MimeWriter")
       
    43         self.check_all("Queue")
       
    44         self.check_all("SimpleHTTPServer")
       
    45         self.check_all("SocketServer")
       
    46         self.check_all("StringIO")
       
    47         self.check_all("UserString")
       
    48         self.check_all("aifc")
       
    49         self.check_all("atexit")
       
    50         self.check_all("audiodev")
       
    51         self.check_all("base64")
       
    52         self.check_all("bdb")
       
    53         self.check_all("binhex")
       
    54         self.check_all("calendar")
       
    55         self.check_all("cgi")
       
    56         self.check_all("cmd")
       
    57         self.check_all("code")
       
    58         self.check_all("codecs")
       
    59         self.check_all("codeop")
       
    60         self.check_all("colorsys")
       
    61         self.check_all("commands")
       
    62         self.check_all("compileall")
       
    63         self.check_all("copy")
       
    64         self.check_all("copy_reg")
       
    65         self.check_all("csv")
       
    66         self.check_all("dbhash")
       
    67         self.check_all("decimal")
       
    68         self.check_all("difflib")
       
    69         self.check_all("dircache")
       
    70         self.check_all("dis")
       
    71         self.check_all("doctest")
       
    72         self.check_all("dummy_thread")
       
    73         self.check_all("dummy_threading")
       
    74         self.check_all("filecmp")
       
    75         self.check_all("fileinput")
       
    76         self.check_all("fnmatch")
       
    77         self.check_all("fpformat")
       
    78         self.check_all("ftplib")
       
    79         self.check_all("getopt")
       
    80         self.check_all("getpass")
       
    81         self.check_all("gettext")
       
    82         self.check_all("glob")
       
    83         self.check_all("gzip")
       
    84         self.check_all("heapq")
       
    85         self.check_all("htmllib")
       
    86         self.check_all("httplib")
       
    87         self.check_all("ihooks")
       
    88         self.check_all("imaplib")
       
    89         self.check_all("imghdr")
       
    90         self.check_all("imputil")
       
    91         self.check_all("keyword")
       
    92         self.check_all("linecache")
       
    93         self.check_all("locale")
       
    94         self.check_all("macpath")
       
    95         self.check_all("macurl2path")
       
    96         self.check_all("mailbox")
       
    97         self.check_all("mailcap")
       
    98         self.check_all("mhlib")
       
    99         self.check_all("mimetools")
       
   100         self.check_all("mimetypes")
       
   101         self.check_all("mimify")
       
   102         self.check_all("multifile")
       
   103         self.check_all("netrc")
       
   104         self.check_all("nntplib")
       
   105         self.check_all("ntpath")
       
   106         self.check_all("opcode")
       
   107         self.check_all("optparse")
       
   108         self.check_all("os")
       
   109         self.check_all("os2emxpath")
       
   110         self.check_all("pdb")
       
   111         self.check_all("pickle")
       
   112         self.check_all("pickletools")
       
   113         self.check_all("pipes")
       
   114         self.check_all("popen2")
       
   115         self.check_all("poplib")
       
   116         self.check_all("posixpath")
       
   117         self.check_all("pprint")
       
   118         self.check_all("profile")
       
   119         self.check_all("pstats")
       
   120         self.check_all("pty")
       
   121         self.check_all("py_compile")
       
   122         self.check_all("pyclbr")
       
   123         self.check_all("quopri")
       
   124         self.check_all("random")
       
   125         self.check_all("re")
       
   126         self.check_all("repr")
       
   127         self.check_all("rexec")
       
   128         self.check_all("rfc822")
       
   129         self.check_all("rlcompleter")
       
   130         self.check_all("robotparser")
       
   131         self.check_all("sched")
       
   132         self.check_all("sets")
       
   133         self.check_all("sgmllib")
       
   134         self.check_all("shelve")
       
   135         self.check_all("shlex")
       
   136         self.check_all("shutil")
       
   137         self.check_all("smtpd")
       
   138         self.check_all("smtplib")
       
   139         self.check_all("sndhdr")
       
   140         self.check_all("socket")
       
   141         self.check_all("_strptime")
       
   142         self.check_all("symtable")
       
   143         self.check_all("tabnanny")
       
   144         self.check_all("tarfile")
       
   145         self.check_all("telnetlib")
       
   146         self.check_all("tempfile")
       
   147         self.check_all("test.test_support")
       
   148         self.check_all("textwrap")
       
   149         self.check_all("threading")
       
   150         self.check_all("timeit")
       
   151         self.check_all("toaiff")
       
   152         self.check_all("tokenize")
       
   153         self.check_all("traceback")
       
   154         self.check_all("tty")
       
   155         self.check_all("unittest")
       
   156         self.check_all("urllib")
       
   157         self.check_all("urlparse")
       
   158         self.check_all("uu")
       
   159         self.check_all("warnings")
       
   160         self.check_all("wave")
       
   161         self.check_all("weakref")
       
   162         self.check_all("webbrowser")
       
   163         self.check_all("xdrlib")
       
   164         self.check_all("zipfile")
       
   165 
       
   166         # rlcompleter needs special consideration; it import readline which
       
   167         # initializes GNU readline which calls setlocale(LC_CTYPE, "")... :-(
       
   168         try:
       
   169             self.check_all("rlcompleter")
       
   170         finally:
       
   171             try:
       
   172                 import locale
       
   173             except ImportError:
       
   174                 pass
       
   175             else:
       
   176                 locale.setlocale(locale.LC_CTYPE, 'C')
       
   177 
       
   178 
       
   179 def test_main():
       
   180     run_unittest(AllTest)
       
   181 
       
   182 if __name__ == "__main__":
       
   183     test_main()