2 from test
.test_support
import run_unittest
8 class AllTest(unittest
.TestCase
):
10 def check_all(self
, modname
):
12 with warnings
.catch_warnings():
13 warnings
.filterwarnings("ignore", ".* (module|package)",
16 exec "import %s" % modname
in names
18 # Silent fail here seems the best route since some modules
19 # may not be available in all environments.
21 self
.failUnless(hasattr(sys
.modules
[modname
], "__all__"),
22 "%s has no __all__ attribute" % modname
)
24 exec "from %s import *" % modname
in names
25 if "__builtins__" in names
:
26 del names
["__builtins__"]
28 all
= set(sys
.modules
[modname
].__all
__)
29 self
.assertEqual(keys
, all
)
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.
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")
53 self
.check_all("binhex")
54 self
.check_all("calendar")
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")
66 self
.check_all("dbhash")
67 self
.check_all("decimal")
68 self
.check_all("difflib")
69 self
.check_all("dircache")
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")
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")
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")
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")
166 # rlcompleter needs special consideration; it import readline which
167 # initializes GNU readline which calls setlocale(LC_CTYPE, "")... :-(
169 self
.check_all("rlcompleter")
176 locale
.setlocale(locale
.LC_CTYPE
, 'C')
180 run_unittest(AllTest
)
182 if __name__
== "__main__":