com.googler.python 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2352) hide show
  1. package/package.json +7 -0
  2. package/python3 +6 -0
  3. package/python3.4.2/bin/2to3 +5 -0
  4. package/python3.4.2/bin/2to3-3.4 +5 -0
  5. package/python3.4.2/bin/android-debian-builder +10 -0
  6. package/python3.4.2/bin/easy_install-3.4 +11 -0
  7. package/python3.4.2/bin/idle3 +5 -0
  8. package/python3.4.2/bin/idle3.4 +5 -0
  9. package/python3.4.2/bin/pip3 +11 -0
  10. package/python3.4.2/bin/pip3.4 +11 -0
  11. package/python3.4.2/bin/pydoc3 +5 -0
  12. package/python3.4.2/bin/pydoc3.4 +5 -0
  13. package/python3.4.2/bin/python3-config +111 -0
  14. package/python3.4.2/bin/python3.4 +0 -0
  15. package/python3.4.2/bin/python3.4-config +111 -0
  16. package/python3.4.2/bin/python3.4m-config +111 -0
  17. package/python3.4.2/bin/pyvenv +11 -0
  18. package/python3.4.2/bin/pyvenv-3.4 +11 -0
  19. package/python3.4.2/include/python3.4m/Python-ast.h +569 -0
  20. package/python3.4.2/include/python3.4m/Python.h +133 -0
  21. package/python3.4.2/include/python3.4m/abstract.h +1267 -0
  22. package/python3.4.2/include/python3.4m/accu.h +37 -0
  23. package/python3.4.2/include/python3.4m/asdl.h +45 -0
  24. package/python3.4.2/include/python3.4m/ast.h +22 -0
  25. package/python3.4.2/include/python3.4m/bitset.h +32 -0
  26. package/python3.4.2/include/python3.4m/bltinmodule.h +14 -0
  27. package/python3.4.2/include/python3.4m/boolobject.h +34 -0
  28. package/python3.4.2/include/python3.4m/bytearrayobject.h +62 -0
  29. package/python3.4.2/include/python3.4m/bytes_methods.h +46 -0
  30. package/python3.4.2/include/python3.4m/bytesobject.h +128 -0
  31. package/python3.4.2/include/python3.4m/cellobject.h +29 -0
  32. package/python3.4.2/include/python3.4m/ceval.h +205 -0
  33. package/python3.4.2/include/python3.4m/classobject.h +58 -0
  34. package/python3.4.2/include/python3.4m/code.h +115 -0
  35. package/python3.4.2/include/python3.4m/codecs.h +233 -0
  36. package/python3.4.2/include/python3.4m/compile.h +72 -0
  37. package/python3.4.2/include/python3.4m/complexobject.h +77 -0
  38. package/python3.4.2/include/python3.4m/datetime.h +243 -0
  39. package/python3.4.2/include/python3.4m/descrobject.h +105 -0
  40. package/python3.4.2/include/python3.4m/dictobject.h +126 -0
  41. package/python3.4.2/include/python3.4m/dtoa.h +19 -0
  42. package/python3.4.2/include/python3.4m/dynamic_annotations.h +499 -0
  43. package/python3.4.2/include/python3.4m/enumobject.h +17 -0
  44. package/python3.4.2/include/python3.4m/errcode.h +38 -0
  45. package/python3.4.2/include/python3.4m/eval.h +27 -0
  46. package/python3.4.2/include/python3.4m/fileobject.h +58 -0
  47. package/python3.4.2/include/python3.4m/fileutils.h +79 -0
  48. package/python3.4.2/include/python3.4m/floatobject.h +128 -0
  49. package/python3.4.2/include/python3.4m/frameobject.h +95 -0
  50. package/python3.4.2/include/python3.4m/funcobject.h +89 -0
  51. package/python3.4.2/include/python3.4m/genobject.h +46 -0
  52. package/python3.4.2/include/python3.4m/graminit.h +84 -0
  53. package/python3.4.2/include/python3.4m/grammar.h +93 -0
  54. package/python3.4.2/include/python3.4m/import.h +130 -0
  55. package/python3.4.2/include/python3.4m/intrcheck.h +21 -0
  56. package/python3.4.2/include/python3.4m/iterobject.h +25 -0
  57. package/python3.4.2/include/python3.4m/listobject.h +80 -0
  58. package/python3.4.2/include/python3.4m/longintrepr.h +103 -0
  59. package/python3.4.2/include/python3.4m/longobject.h +204 -0
  60. package/python3.4.2/include/python3.4m/marshal.h +28 -0
  61. package/python3.4.2/include/python3.4m/memoryobject.h +74 -0
  62. package/python3.4.2/include/python3.4m/metagrammar.h +18 -0
  63. package/python3.4.2/include/python3.4m/methodobject.h +93 -0
  64. package/python3.4.2/include/python3.4m/modsupport.h +132 -0
  65. package/python3.4.2/include/python3.4m/moduleobject.h +63 -0
  66. package/python3.4.2/include/python3.4m/namespaceobject.h +17 -0
  67. package/python3.4.2/include/python3.4m/node.h +44 -0
  68. package/python3.4.2/include/python3.4m/object.h +1015 -0
  69. package/python3.4.2/include/python3.4m/objimpl.h +361 -0
  70. package/python3.4.2/include/python3.4m/opcode.h +159 -0
  71. package/python3.4.2/include/python3.4m/osdefs.h +50 -0
  72. package/python3.4.2/include/python3.4m/parsetok.h +108 -0
  73. package/python3.4.2/include/python3.4m/patchlevel.h +35 -0
  74. package/python3.4.2/include/python3.4m/pgen.h +18 -0
  75. package/python3.4.2/include/python3.4m/pgenheaders.h +42 -0
  76. package/python3.4.2/include/python3.4m/py_curses.h +177 -0
  77. package/python3.4.2/include/python3.4m/pyarena.h +64 -0
  78. package/python3.4.2/include/python3.4m/pyatomic.h +184 -0
  79. package/python3.4.2/include/python3.4m/pycapsule.h +59 -0
  80. package/python3.4.2/include/python3.4m/pyconfig.h +1503 -0
  81. package/python3.4.2/include/python3.4m/pyctype.h +33 -0
  82. package/python3.4.2/include/python3.4m/pydebug.h +34 -0
  83. package/python3.4.2/include/python3.4m/pyerrors.h +464 -0
  84. package/python3.4.2/include/python3.4m/pyexpat.h +53 -0
  85. package/python3.4.2/include/python3.4m/pyfpe.h +176 -0
  86. package/python3.4.2/include/python3.4m/pygetopt.h +21 -0
  87. package/python3.4.2/include/python3.4m/pyhash.h +149 -0
  88. package/python3.4.2/include/python3.4m/pymacconfig.h +102 -0
  89. package/python3.4.2/include/python3.4m/pymacro.h +78 -0
  90. package/python3.4.2/include/python3.4m/pymath.h +190 -0
  91. package/python3.4.2/include/python3.4m/pymem.h +183 -0
  92. package/python3.4.2/include/python3.4m/pyport.h +883 -0
  93. package/python3.4.2/include/python3.4m/pystate.h +271 -0
  94. package/python3.4.2/include/python3.4m/pystrcmp.h +23 -0
  95. package/python3.4.2/include/python3.4m/pystrtod.h +41 -0
  96. package/python3.4.2/include/python3.4m/pythonrun.h +304 -0
  97. package/python3.4.2/include/python3.4m/pythread.h +93 -0
  98. package/python3.4.2/include/python3.4m/pytime.h +105 -0
  99. package/python3.4.2/include/python3.4m/rangeobject.h +27 -0
  100. package/python3.4.2/include/python3.4m/setobject.h +113 -0
  101. package/python3.4.2/include/python3.4m/sliceobject.h +50 -0
  102. package/python3.4.2/include/python3.4m/structmember.h +76 -0
  103. package/python3.4.2/include/python3.4m/structseq.h +49 -0
  104. package/python3.4.2/include/python3.4m/symtable.h +122 -0
  105. package/python3.4.2/include/python3.4m/sysmodule.h +43 -0
  106. package/python3.4.2/include/python3.4m/token.h +87 -0
  107. package/python3.4.2/include/python3.4m/traceback.h +72 -0
  108. package/python3.4.2/include/python3.4m/tupleobject.h +73 -0
  109. package/python3.4.2/include/python3.4m/typeslots.h +76 -0
  110. package/python3.4.2/include/python3.4m/ucnhash.h +36 -0
  111. package/python3.4.2/include/python3.4m/unicodeobject.h +2271 -0
  112. package/python3.4.2/include/python3.4m/warnings.h +54 -0
  113. package/python3.4.2/include/python3.4m/weakrefobject.h +86 -0
  114. package/python3.4.2/lib/pkgconfig/python-3.4.pc +13 -0
  115. package/python3.4.2/lib/pkgconfig/python-3.4m.pc +13 -0
  116. package/python3.4.2/lib/pkgconfig/python3.pc +13 -0
  117. package/python3.4.2/lib/python3.4/LICENSE.txt +254 -0
  118. package/python3.4.2/lib/python3.4/__future__.py +134 -0
  119. package/python3.4.2/lib/python3.4/__phello__.foo.py +1 -0
  120. package/python3.4.2/lib/python3.4/__pycache__/_bootlocale.cpython-34.pyc +0 -0
  121. package/python3.4.2/lib/python3.4/__pycache__/_collections_abc.cpython-34.pyc +0 -0
  122. package/python3.4.2/lib/python3.4/__pycache__/_sitebuiltins.cpython-34.pyc +0 -0
  123. package/python3.4.2/lib/python3.4/__pycache__/_sysconfigdata.cpython-34.pyc +0 -0
  124. package/python3.4.2/lib/python3.4/__pycache__/_weakrefset.cpython-34.pyc +0 -0
  125. package/python3.4.2/lib/python3.4/__pycache__/abc.cpython-34.pyc +0 -0
  126. package/python3.4.2/lib/python3.4/__pycache__/codecs.cpython-34.pyc +0 -0
  127. package/python3.4.2/lib/python3.4/__pycache__/genericpath.cpython-34.pyc +0 -0
  128. package/python3.4.2/lib/python3.4/__pycache__/io.cpython-34.pyc +0 -0
  129. package/python3.4.2/lib/python3.4/__pycache__/os.cpython-34.pyc +0 -0
  130. package/python3.4.2/lib/python3.4/__pycache__/posixpath.cpython-34.pyc +0 -0
  131. package/python3.4.2/lib/python3.4/__pycache__/rlcompleter.cpython-34.pyc +0 -0
  132. package/python3.4.2/lib/python3.4/__pycache__/site.cpython-34.pyc +0 -0
  133. package/python3.4.2/lib/python3.4/__pycache__/stat.cpython-34.pyc +0 -0
  134. package/python3.4.2/lib/python3.4/__pycache__/sysconfig.cpython-34.pyc +0 -0
  135. package/python3.4.2/lib/python3.4/_bootlocale.py +34 -0
  136. package/python3.4.2/lib/python3.4/_collections_abc.py +753 -0
  137. package/python3.4.2/lib/python3.4/_compat_pickle.py +137 -0
  138. package/python3.4.2/lib/python3.4/_dummy_thread.py +155 -0
  139. package/python3.4.2/lib/python3.4/_markupbase.py +395 -0
  140. package/python3.4.2/lib/python3.4/_osx_support.py +502 -0
  141. package/python3.4.2/lib/python3.4/_pyio.py +2105 -0
  142. package/python3.4.2/lib/python3.4/_sitebuiltins.py +103 -0
  143. package/python3.4.2/lib/python3.4/_strptime.py +511 -0
  144. package/python3.4.2/lib/python3.4/_sysconfigdata.py +710 -0
  145. package/python3.4.2/lib/python3.4/_threading_local.py +246 -0
  146. package/python3.4.2/lib/python3.4/_weakrefset.py +196 -0
  147. package/python3.4.2/lib/python3.4/abc.py +248 -0
  148. package/python3.4.2/lib/python3.4/aifc.py +918 -0
  149. package/python3.4.2/lib/python3.4/antigravity.py +17 -0
  150. package/python3.4.2/lib/python3.4/argparse.py +2379 -0
  151. package/python3.4.2/lib/python3.4/ast.py +315 -0
  152. package/python3.4.2/lib/python3.4/asynchat.py +333 -0
  153. package/python3.4.2/lib/python3.4/asyncio/__init__.py +48 -0
  154. package/python3.4.2/lib/python3.4/asyncio/base_events.py +1055 -0
  155. package/python3.4.2/lib/python3.4/asyncio/base_subprocess.py +197 -0
  156. package/python3.4.2/lib/python3.4/asyncio/constants.py +7 -0
  157. package/python3.4.2/lib/python3.4/asyncio/coroutines.py +195 -0
  158. package/python3.4.2/lib/python3.4/asyncio/events.py +586 -0
  159. package/python3.4.2/lib/python3.4/asyncio/futures.py +411 -0
  160. package/python3.4.2/lib/python3.4/asyncio/locks.py +469 -0
  161. package/python3.4.2/lib/python3.4/asyncio/log.py +7 -0
  162. package/python3.4.2/lib/python3.4/asyncio/proactor_events.py +499 -0
  163. package/python3.4.2/lib/python3.4/asyncio/protocols.py +129 -0
  164. package/python3.4.2/lib/python3.4/asyncio/queues.py +288 -0
  165. package/python3.4.2/lib/python3.4/asyncio/selector_events.py +996 -0
  166. package/python3.4.2/lib/python3.4/asyncio/streams.py +485 -0
  167. package/python3.4.2/lib/python3.4/asyncio/subprocess.py +228 -0
  168. package/python3.4.2/lib/python3.4/asyncio/tasks.py +658 -0
  169. package/python3.4.2/lib/python3.4/asyncio/test_utils.py +425 -0
  170. package/python3.4.2/lib/python3.4/asyncio/transports.py +298 -0
  171. package/python3.4.2/lib/python3.4/asyncio/unix_events.py +922 -0
  172. package/python3.4.2/lib/python3.4/asyncio/windows_events.py +634 -0
  173. package/python3.4.2/lib/python3.4/asyncio/windows_utils.py +207 -0
  174. package/python3.4.2/lib/python3.4/asyncore.py +666 -0
  175. package/python3.4.2/lib/python3.4/base64.py +602 -0
  176. package/python3.4.2/lib/python3.4/bdb.py +673 -0
  177. package/python3.4.2/lib/python3.4/binhex.py +471 -0
  178. package/python3.4.2/lib/python3.4/bisect.py +92 -0
  179. package/python3.4.2/lib/python3.4/bz2.py +521 -0
  180. package/python3.4.2/lib/python3.4/cProfile.py +160 -0
  181. package/python3.4.2/lib/python3.4/calendar.py +703 -0
  182. package/python3.4.2/lib/python3.4/cgi.py +1061 -0
  183. package/python3.4.2/lib/python3.4/cgitb.py +320 -0
  184. package/python3.4.2/lib/python3.4/chunk.py +167 -0
  185. package/python3.4.2/lib/python3.4/cmd.py +401 -0
  186. package/python3.4.2/lib/python3.4/code.py +302 -0
  187. package/python3.4.2/lib/python3.4/codecs.py +1110 -0
  188. package/python3.4.2/lib/python3.4/codeop.py +168 -0
  189. package/python3.4.2/lib/python3.4/collections/__init__.py +1132 -0
  190. package/python3.4.2/lib/python3.4/collections/__main__.py +38 -0
  191. package/python3.4.2/lib/python3.4/collections/abc.py +2 -0
  192. package/python3.4.2/lib/python3.4/colorsys.py +164 -0
  193. package/python3.4.2/lib/python3.4/compileall.py +241 -0
  194. package/python3.4.2/lib/python3.4/concurrent/__init__.py +1 -0
  195. package/python3.4.2/lib/python3.4/concurrent/futures/__init__.py +18 -0
  196. package/python3.4.2/lib/python3.4/concurrent/futures/_base.py +575 -0
  197. package/python3.4.2/lib/python3.4/concurrent/futures/process.py +427 -0
  198. package/python3.4.2/lib/python3.4/concurrent/futures/thread.py +132 -0
  199. package/python3.4.2/lib/python3.4/config-3.4m/Makefile +1835 -0
  200. package/python3.4.2/lib/python3.4/config-3.4m/Setup +466 -0
  201. package/python3.4.2/lib/python3.4/config-3.4m/Setup.config +13 -0
  202. package/python3.4.2/lib/python3.4/config-3.4m/Setup.local +1 -0
  203. package/python3.4.2/lib/python3.4/config-3.4m/config.c +234 -0
  204. package/python3.4.2/lib/python3.4/config-3.4m/config.c.in +67 -0
  205. package/python3.4.2/lib/python3.4/config-3.4m/install-sh +294 -0
  206. package/python3.4.2/lib/python3.4/config-3.4m/makesetup +293 -0
  207. package/python3.4.2/lib/python3.4/config-3.4m/python-config.py +68 -0
  208. package/python3.4.2/lib/python3.4/configparser.py +1254 -0
  209. package/python3.4.2/lib/python3.4/contextlib.py +340 -0
  210. package/python3.4.2/lib/python3.4/copy.py +333 -0
  211. package/python3.4.2/lib/python3.4/copyreg.py +202 -0
  212. package/python3.4.2/lib/python3.4/crypt.py +62 -0
  213. package/python3.4.2/lib/python3.4/csv.py +449 -0
  214. package/python3.4.2/lib/python3.4/ctypes/__init__.py +541 -0
  215. package/python3.4.2/lib/python3.4/ctypes/_endian.py +59 -0
  216. package/python3.4.2/lib/python3.4/ctypes/macholib/README.ctypes +7 -0
  217. package/python3.4.2/lib/python3.4/ctypes/macholib/__init__.py +9 -0
  218. package/python3.4.2/lib/python3.4/ctypes/macholib/dyld.py +158 -0
  219. package/python3.4.2/lib/python3.4/ctypes/macholib/dylib.py +63 -0
  220. package/python3.4.2/lib/python3.4/ctypes/macholib/fetch_macholib +2 -0
  221. package/python3.4.2/lib/python3.4/ctypes/macholib/fetch_macholib.bat +1 -0
  222. package/python3.4.2/lib/python3.4/ctypes/macholib/framework.py +65 -0
  223. package/python3.4.2/lib/python3.4/ctypes/test/__init__.py +14 -0
  224. package/python3.4.2/lib/python3.4/ctypes/test/__main__.py +4 -0
  225. package/python3.4.2/lib/python3.4/ctypes/test/test_anon.py +60 -0
  226. package/python3.4.2/lib/python3.4/ctypes/test/test_array_in_pointer.py +64 -0
  227. package/python3.4.2/lib/python3.4/ctypes/test/test_arrays.py +181 -0
  228. package/python3.4.2/lib/python3.4/ctypes/test/test_as_parameter.py +226 -0
  229. package/python3.4.2/lib/python3.4/ctypes/test/test_bitfields.py +263 -0
  230. package/python3.4.2/lib/python3.4/ctypes/test/test_buffers.py +64 -0
  231. package/python3.4.2/lib/python3.4/ctypes/test/test_bytes.py +65 -0
  232. package/python3.4.2/lib/python3.4/ctypes/test/test_byteswap.py +295 -0
  233. package/python3.4.2/lib/python3.4/ctypes/test/test_callbacks.py +247 -0
  234. package/python3.4.2/lib/python3.4/ctypes/test/test_cast.py +86 -0
  235. package/python3.4.2/lib/python3.4/ctypes/test/test_cfuncs.py +212 -0
  236. package/python3.4.2/lib/python3.4/ctypes/test/test_checkretval.py +36 -0
  237. package/python3.4.2/lib/python3.4/ctypes/test/test_delattr.py +21 -0
  238. package/python3.4.2/lib/python3.4/ctypes/test/test_errno.py +79 -0
  239. package/python3.4.2/lib/python3.4/ctypes/test/test_find.py +81 -0
  240. package/python3.4.2/lib/python3.4/ctypes/test/test_frombuffer.py +81 -0
  241. package/python3.4.2/lib/python3.4/ctypes/test/test_funcptr.py +127 -0
  242. package/python3.4.2/lib/python3.4/ctypes/test/test_functions.py +402 -0
  243. package/python3.4.2/lib/python3.4/ctypes/test/test_incomplete.py +42 -0
  244. package/python3.4.2/lib/python3.4/ctypes/test/test_init.py +40 -0
  245. package/python3.4.2/lib/python3.4/ctypes/test/test_internals.py +100 -0
  246. package/python3.4.2/lib/python3.4/ctypes/test/test_keeprefs.py +153 -0
  247. package/python3.4.2/lib/python3.4/ctypes/test/test_libc.py +33 -0
  248. package/python3.4.2/lib/python3.4/ctypes/test/test_loading.py +119 -0
  249. package/python3.4.2/lib/python3.4/ctypes/test/test_macholib.py +63 -0
  250. package/python3.4.2/lib/python3.4/ctypes/test/test_memfunctions.py +79 -0
  251. package/python3.4.2/lib/python3.4/ctypes/test/test_numbers.py +290 -0
  252. package/python3.4.2/lib/python3.4/ctypes/test/test_objects.py +67 -0
  253. package/python3.4.2/lib/python3.4/ctypes/test/test_parameters.py +176 -0
  254. package/python3.4.2/lib/python3.4/ctypes/test/test_pep3118.py +206 -0
  255. package/python3.4.2/lib/python3.4/ctypes/test/test_pickling.py +83 -0
  256. package/python3.4.2/lib/python3.4/ctypes/test/test_pointers.py +192 -0
  257. package/python3.4.2/lib/python3.4/ctypes/test/test_prototypes.py +219 -0
  258. package/python3.4.2/lib/python3.4/ctypes/test/test_python_api.py +89 -0
  259. package/python3.4.2/lib/python3.4/ctypes/test/test_random_things.py +74 -0
  260. package/python3.4.2/lib/python3.4/ctypes/test/test_refcounts.py +101 -0
  261. package/python3.4.2/lib/python3.4/ctypes/test/test_repr.py +29 -0
  262. package/python3.4.2/lib/python3.4/ctypes/test/test_returnfuncptrs.py +67 -0
  263. package/python3.4.2/lib/python3.4/ctypes/test/test_simplesubclasses.py +55 -0
  264. package/python3.4.2/lib/python3.4/ctypes/test/test_sizes.py +34 -0
  265. package/python3.4.2/lib/python3.4/ctypes/test/test_slicing.py +167 -0
  266. package/python3.4.2/lib/python3.4/ctypes/test/test_stringptr.py +77 -0
  267. package/python3.4.2/lib/python3.4/ctypes/test/test_strings.py +225 -0
  268. package/python3.4.2/lib/python3.4/ctypes/test/test_struct_fields.py +50 -0
  269. package/python3.4.2/lib/python3.4/ctypes/test/test_structures.py +468 -0
  270. package/python3.4.2/lib/python3.4/ctypes/test/test_unaligned_structures.py +45 -0
  271. package/python3.4.2/lib/python3.4/ctypes/test/test_unicode.py +56 -0
  272. package/python3.4.2/lib/python3.4/ctypes/test/test_values.py +95 -0
  273. package/python3.4.2/lib/python3.4/ctypes/test/test_varsize_struct.py +50 -0
  274. package/python3.4.2/lib/python3.4/ctypes/test/test_win32.py +119 -0
  275. package/python3.4.2/lib/python3.4/ctypes/test/test_wintypes.py +41 -0
  276. package/python3.4.2/lib/python3.4/ctypes/util.py +267 -0
  277. package/python3.4.2/lib/python3.4/ctypes/wintypes.py +202 -0
  278. package/python3.4.2/lib/python3.4/curses/__init__.py +101 -0
  279. package/python3.4.2/lib/python3.4/curses/ascii.py +99 -0
  280. package/python3.4.2/lib/python3.4/curses/has_key.py +192 -0
  281. package/python3.4.2/lib/python3.4/curses/panel.py +6 -0
  282. package/python3.4.2/lib/python3.4/curses/textpad.py +188 -0
  283. package/python3.4.2/lib/python3.4/datetime.py +2136 -0
  284. package/python3.4.2/lib/python3.4/dbm/__init__.py +188 -0
  285. package/python3.4.2/lib/python3.4/dbm/dumb.py +291 -0
  286. package/python3.4.2/lib/python3.4/dbm/gnu.py +3 -0
  287. package/python3.4.2/lib/python3.4/dbm/ndbm.py +3 -0
  288. package/python3.4.2/lib/python3.4/decimal.py +6414 -0
  289. package/python3.4.2/lib/python3.4/difflib.py +2039 -0
  290. package/python3.4.2/lib/python3.4/dis.py +475 -0
  291. package/python3.4.2/lib/python3.4/distutils/README +13 -0
  292. package/python3.4.2/lib/python3.4/distutils/__init__.py +17 -0
  293. package/python3.4.2/lib/python3.4/distutils/archive_util.py +245 -0
  294. package/python3.4.2/lib/python3.4/distutils/bcppcompiler.py +393 -0
  295. package/python3.4.2/lib/python3.4/distutils/ccompiler.py +1115 -0
  296. package/python3.4.2/lib/python3.4/distutils/cmd.py +435 -0
  297. package/python3.4.2/lib/python3.4/distutils/command/__init__.py +31 -0
  298. package/python3.4.2/lib/python3.4/distutils/command/bdist.py +142 -0
  299. package/python3.4.2/lib/python3.4/distutils/command/bdist_dumb.py +122 -0
  300. package/python3.4.2/lib/python3.4/distutils/command/bdist_msi.py +741 -0
  301. package/python3.4.2/lib/python3.4/distutils/command/bdist_rpm.py +582 -0
  302. package/python3.4.2/lib/python3.4/distutils/command/bdist_wininst.py +349 -0
  303. package/python3.4.2/lib/python3.4/distutils/command/build.py +148 -0
  304. package/python3.4.2/lib/python3.4/distutils/command/build_clib.py +209 -0
  305. package/python3.4.2/lib/python3.4/distutils/command/build_ext.py +735 -0
  306. package/python3.4.2/lib/python3.4/distutils/command/build_py.py +416 -0
  307. package/python3.4.2/lib/python3.4/distutils/command/build_scripts.py +160 -0
  308. package/python3.4.2/lib/python3.4/distutils/command/check.py +145 -0
  309. package/python3.4.2/lib/python3.4/distutils/command/clean.py +76 -0
  310. package/python3.4.2/lib/python3.4/distutils/command/command_template +33 -0
  311. package/python3.4.2/lib/python3.4/distutils/command/config.py +347 -0
  312. package/python3.4.2/lib/python3.4/distutils/command/install.py +650 -0
  313. package/python3.4.2/lib/python3.4/distutils/command/install_data.py +79 -0
  314. package/python3.4.2/lib/python3.4/distutils/command/install_egg_info.py +77 -0
  315. package/python3.4.2/lib/python3.4/distutils/command/install_headers.py +47 -0
  316. package/python3.4.2/lib/python3.4/distutils/command/install_lib.py +217 -0
  317. package/python3.4.2/lib/python3.4/distutils/command/install_scripts.py +60 -0
  318. package/python3.4.2/lib/python3.4/distutils/command/register.py +304 -0
  319. package/python3.4.2/lib/python3.4/distutils/command/sdist.py +467 -0
  320. package/python3.4.2/lib/python3.4/distutils/command/upload.py +202 -0
  321. package/python3.4.2/lib/python3.4/distutils/command/wininst-10.0-amd64.exe +0 -0
  322. package/python3.4.2/lib/python3.4/distutils/command/wininst-10.0.exe +0 -0
  323. package/python3.4.2/lib/python3.4/distutils/command/wininst-6.0.exe +0 -0
  324. package/python3.4.2/lib/python3.4/distutils/command/wininst-7.1.exe +0 -0
  325. package/python3.4.2/lib/python3.4/distutils/command/wininst-8.0.exe +0 -0
  326. package/python3.4.2/lib/python3.4/distutils/command/wininst-9.0-amd64.exe +0 -0
  327. package/python3.4.2/lib/python3.4/distutils/command/wininst-9.0.exe +0 -0
  328. package/python3.4.2/lib/python3.4/distutils/config.py +131 -0
  329. package/python3.4.2/lib/python3.4/distutils/core.py +237 -0
  330. package/python3.4.2/lib/python3.4/distutils/cygwinccompiler.py +405 -0
  331. package/python3.4.2/lib/python3.4/distutils/debug.py +5 -0
  332. package/python3.4.2/lib/python3.4/distutils/dep_util.py +92 -0
  333. package/python3.4.2/lib/python3.4/distutils/dir_util.py +210 -0
  334. package/python3.4.2/lib/python3.4/distutils/dist.py +1238 -0
  335. package/python3.4.2/lib/python3.4/distutils/errors.py +97 -0
  336. package/python3.4.2/lib/python3.4/distutils/extension.py +233 -0
  337. package/python3.4.2/lib/python3.4/distutils/fancy_getopt.py +457 -0
  338. package/python3.4.2/lib/python3.4/distutils/file_util.py +230 -0
  339. package/python3.4.2/lib/python3.4/distutils/filelist.py +328 -0
  340. package/python3.4.2/lib/python3.4/distutils/log.py +75 -0
  341. package/python3.4.2/lib/python3.4/distutils/msvc9compiler.py +788 -0
  342. package/python3.4.2/lib/python3.4/distutils/msvccompiler.py +640 -0
  343. package/python3.4.2/lib/python3.4/distutils/spawn.py +195 -0
  344. package/python3.4.2/lib/python3.4/distutils/sysconfig.py +562 -0
  345. package/python3.4.2/lib/python3.4/distutils/tests/Setup.sample +67 -0
  346. package/python3.4.2/lib/python3.4/distutils/tests/__init__.py +36 -0
  347. package/python3.4.2/lib/python3.4/distutils/tests/support.py +210 -0
  348. package/python3.4.2/lib/python3.4/distutils/tests/test_archive_util.py +341 -0
  349. package/python3.4.2/lib/python3.4/distutils/tests/test_bdist.py +50 -0
  350. package/python3.4.2/lib/python3.4/distutils/tests/test_bdist_dumb.py +97 -0
  351. package/python3.4.2/lib/python3.4/distutils/tests/test_bdist_msi.py +25 -0
  352. package/python3.4.2/lib/python3.4/distutils/tests/test_bdist_rpm.py +134 -0
  353. package/python3.4.2/lib/python3.4/distutils/tests/test_bdist_wininst.py +31 -0
  354. package/python3.4.2/lib/python3.4/distutils/tests/test_build.py +55 -0
  355. package/python3.4.2/lib/python3.4/distutils/tests/test_build_clib.py +143 -0
  356. package/python3.4.2/lib/python3.4/distutils/tests/test_build_ext.py +488 -0
  357. package/python3.4.2/lib/python3.4/distutils/tests/test_build_py.py +178 -0
  358. package/python3.4.2/lib/python3.4/distutils/tests/test_build_scripts.py +112 -0
  359. package/python3.4.2/lib/python3.4/distutils/tests/test_check.py +106 -0
  360. package/python3.4.2/lib/python3.4/distutils/tests/test_clean.py +51 -0
  361. package/python3.4.2/lib/python3.4/distutils/tests/test_cmd.py +126 -0
  362. package/python3.4.2/lib/python3.4/distutils/tests/test_config.py +120 -0
  363. package/python3.4.2/lib/python3.4/distutils/tests/test_config_cmd.py +89 -0
  364. package/python3.4.2/lib/python3.4/distutils/tests/test_core.py +108 -0
  365. package/python3.4.2/lib/python3.4/distutils/tests/test_cygwinccompiler.py +155 -0
  366. package/python3.4.2/lib/python3.4/distutils/tests/test_dep_util.py +81 -0
  367. package/python3.4.2/lib/python3.4/distutils/tests/test_dir_util.py +139 -0
  368. package/python3.4.2/lib/python3.4/distutils/tests/test_dist.py +454 -0
  369. package/python3.4.2/lib/python3.4/distutils/tests/test_extension.py +69 -0
  370. package/python3.4.2/lib/python3.4/distutils/tests/test_file_util.py +85 -0
  371. package/python3.4.2/lib/python3.4/distutils/tests/test_filelist.py +299 -0
  372. package/python3.4.2/lib/python3.4/distutils/tests/test_install.py +246 -0
  373. package/python3.4.2/lib/python3.4/distutils/tests/test_install_data.py +77 -0
  374. package/python3.4.2/lib/python3.4/distutils/tests/test_install_headers.py +41 -0
  375. package/python3.4.2/lib/python3.4/distutils/tests/test_install_lib.py +115 -0
  376. package/python3.4.2/lib/python3.4/distutils/tests/test_install_scripts.py +82 -0
  377. package/python3.4.2/lib/python3.4/distutils/tests/test_log.py +37 -0
  378. package/python3.4.2/lib/python3.4/distutils/tests/test_msvc9compiler.py +184 -0
  379. package/python3.4.2/lib/python3.4/distutils/tests/test_register.py +309 -0
  380. package/python3.4.2/lib/python3.4/distutils/tests/test_sdist.py +484 -0
  381. package/python3.4.2/lib/python3.4/distutils/tests/test_spawn.py +58 -0
  382. package/python3.4.2/lib/python3.4/distutils/tests/test_sysconfig.py +207 -0
  383. package/python3.4.2/lib/python3.4/distutils/tests/test_text_file.py +107 -0
  384. package/python3.4.2/lib/python3.4/distutils/tests/test_unixccompiler.py +150 -0
  385. package/python3.4.2/lib/python3.4/distutils/tests/test_upload.py +151 -0
  386. package/python3.4.2/lib/python3.4/distutils/tests/test_util.py +300 -0
  387. package/python3.4.2/lib/python3.4/distutils/tests/test_version.py +71 -0
  388. package/python3.4.2/lib/python3.4/distutils/tests/test_versionpredicate.py +13 -0
  389. package/python3.4.2/lib/python3.4/distutils/tests/xxmodule.c +396 -0
  390. package/python3.4.2/lib/python3.4/distutils/text_file.py +285 -0
  391. package/python3.4.2/lib/python3.4/distutils/unixccompiler.py +298 -0
  392. package/python3.4.2/lib/python3.4/distutils/util.py +553 -0
  393. package/python3.4.2/lib/python3.4/distutils/version.py +349 -0
  394. package/python3.4.2/lib/python3.4/distutils/versionpredicate.py +166 -0
  395. package/python3.4.2/lib/python3.4/doctest.py +2793 -0
  396. package/python3.4.2/lib/python3.4/dummy_threading.py +78 -0
  397. package/python3.4.2/lib/python3.4/email/__init__.py +64 -0
  398. package/python3.4.2/lib/python3.4/email/_encoded_words.py +221 -0
  399. package/python3.4.2/lib/python3.4/email/_header_value_parser.py +2947 -0
  400. package/python3.4.2/lib/python3.4/email/_parseaddr.py +540 -0
  401. package/python3.4.2/lib/python3.4/email/_policybase.py +358 -0
  402. package/python3.4.2/lib/python3.4/email/architecture.rst +216 -0
  403. package/python3.4.2/lib/python3.4/email/base64mime.py +119 -0
  404. package/python3.4.2/lib/python3.4/email/charset.py +409 -0
  405. package/python3.4.2/lib/python3.4/email/contentmanager.py +249 -0
  406. package/python3.4.2/lib/python3.4/email/encoders.py +69 -0
  407. package/python3.4.2/lib/python3.4/email/errors.py +107 -0
  408. package/python3.4.2/lib/python3.4/email/feedparser.py +526 -0
  409. package/python3.4.2/lib/python3.4/email/generator.py +507 -0
  410. package/python3.4.2/lib/python3.4/email/header.py +581 -0
  411. package/python3.4.2/lib/python3.4/email/headerregistry.py +583 -0
  412. package/python3.4.2/lib/python3.4/email/iterators.py +71 -0
  413. package/python3.4.2/lib/python3.4/email/message.py +1147 -0
  414. package/python3.4.2/lib/python3.4/email/mime/__init__.py +0 -0
  415. package/python3.4.2/lib/python3.4/email/mime/application.py +36 -0
  416. package/python3.4.2/lib/python3.4/email/mime/audio.py +73 -0
  417. package/python3.4.2/lib/python3.4/email/mime/base.py +26 -0
  418. package/python3.4.2/lib/python3.4/email/mime/image.py +46 -0
  419. package/python3.4.2/lib/python3.4/email/mime/message.py +34 -0
  420. package/python3.4.2/lib/python3.4/email/mime/multipart.py +47 -0
  421. package/python3.4.2/lib/python3.4/email/mime/nonmultipart.py +22 -0
  422. package/python3.4.2/lib/python3.4/email/mime/text.py +41 -0
  423. package/python3.4.2/lib/python3.4/email/parser.py +132 -0
  424. package/python3.4.2/lib/python3.4/email/policy.py +201 -0
  425. package/python3.4.2/lib/python3.4/email/quoprimime.py +299 -0
  426. package/python3.4.2/lib/python3.4/email/utils.py +399 -0
  427. package/python3.4.2/lib/python3.4/encodings/__init__.py +152 -0
  428. package/python3.4.2/lib/python3.4/encodings/__pycache__/__init__.cpython-34.pyc +0 -0
  429. package/python3.4.2/lib/python3.4/encodings/__pycache__/aliases.cpython-34.pyc +0 -0
  430. package/python3.4.2/lib/python3.4/encodings/__pycache__/ascii.cpython-34.pyc +0 -0
  431. package/python3.4.2/lib/python3.4/encodings/__pycache__/latin_1.cpython-34.pyc +0 -0
  432. package/python3.4.2/lib/python3.4/encodings/__pycache__/utf_8.cpython-34.pyc +0 -0
  433. package/python3.4.2/lib/python3.4/encodings/aliases.py +544 -0
  434. package/python3.4.2/lib/python3.4/encodings/ascii.py +50 -0
  435. package/python3.4.2/lib/python3.4/encodings/base64_codec.py +55 -0
  436. package/python3.4.2/lib/python3.4/encodings/big5.py +39 -0
  437. package/python3.4.2/lib/python3.4/encodings/big5hkscs.py +39 -0
  438. package/python3.4.2/lib/python3.4/encodings/bz2_codec.py +78 -0
  439. package/python3.4.2/lib/python3.4/encodings/charmap.py +69 -0
  440. package/python3.4.2/lib/python3.4/encodings/cp037.py +307 -0
  441. package/python3.4.2/lib/python3.4/encodings/cp1006.py +307 -0
  442. package/python3.4.2/lib/python3.4/encodings/cp1026.py +307 -0
  443. package/python3.4.2/lib/python3.4/encodings/cp1125.py +698 -0
  444. package/python3.4.2/lib/python3.4/encodings/cp1140.py +307 -0
  445. package/python3.4.2/lib/python3.4/encodings/cp1250.py +307 -0
  446. package/python3.4.2/lib/python3.4/encodings/cp1251.py +307 -0
  447. package/python3.4.2/lib/python3.4/encodings/cp1252.py +307 -0
  448. package/python3.4.2/lib/python3.4/encodings/cp1253.py +307 -0
  449. package/python3.4.2/lib/python3.4/encodings/cp1254.py +307 -0
  450. package/python3.4.2/lib/python3.4/encodings/cp1255.py +307 -0
  451. package/python3.4.2/lib/python3.4/encodings/cp1256.py +307 -0
  452. package/python3.4.2/lib/python3.4/encodings/cp1257.py +307 -0
  453. package/python3.4.2/lib/python3.4/encodings/cp1258.py +307 -0
  454. package/python3.4.2/lib/python3.4/encodings/cp273.py +307 -0
  455. package/python3.4.2/lib/python3.4/encodings/cp424.py +307 -0
  456. package/python3.4.2/lib/python3.4/encodings/cp437.py +698 -0
  457. package/python3.4.2/lib/python3.4/encodings/cp500.py +307 -0
  458. package/python3.4.2/lib/python3.4/encodings/cp65001.py +40 -0
  459. package/python3.4.2/lib/python3.4/encodings/cp720.py +309 -0
  460. package/python3.4.2/lib/python3.4/encodings/cp737.py +698 -0
  461. package/python3.4.2/lib/python3.4/encodings/cp775.py +697 -0
  462. package/python3.4.2/lib/python3.4/encodings/cp850.py +698 -0
  463. package/python3.4.2/lib/python3.4/encodings/cp852.py +698 -0
  464. package/python3.4.2/lib/python3.4/encodings/cp855.py +698 -0
  465. package/python3.4.2/lib/python3.4/encodings/cp856.py +307 -0
  466. package/python3.4.2/lib/python3.4/encodings/cp857.py +694 -0
  467. package/python3.4.2/lib/python3.4/encodings/cp858.py +698 -0
  468. package/python3.4.2/lib/python3.4/encodings/cp860.py +698 -0
  469. package/python3.4.2/lib/python3.4/encodings/cp861.py +698 -0
  470. package/python3.4.2/lib/python3.4/encodings/cp862.py +698 -0
  471. package/python3.4.2/lib/python3.4/encodings/cp863.py +698 -0
  472. package/python3.4.2/lib/python3.4/encodings/cp864.py +690 -0
  473. package/python3.4.2/lib/python3.4/encodings/cp865.py +698 -0
  474. package/python3.4.2/lib/python3.4/encodings/cp866.py +698 -0
  475. package/python3.4.2/lib/python3.4/encodings/cp869.py +689 -0
  476. package/python3.4.2/lib/python3.4/encodings/cp874.py +307 -0
  477. package/python3.4.2/lib/python3.4/encodings/cp875.py +307 -0
  478. package/python3.4.2/lib/python3.4/encodings/cp932.py +39 -0
  479. package/python3.4.2/lib/python3.4/encodings/cp949.py +39 -0
  480. package/python3.4.2/lib/python3.4/encodings/cp950.py +39 -0
  481. package/python3.4.2/lib/python3.4/encodings/euc_jis_2004.py +39 -0
  482. package/python3.4.2/lib/python3.4/encodings/euc_jisx0213.py +39 -0
  483. package/python3.4.2/lib/python3.4/encodings/euc_jp.py +39 -0
  484. package/python3.4.2/lib/python3.4/encodings/euc_kr.py +39 -0
  485. package/python3.4.2/lib/python3.4/encodings/gb18030.py +39 -0
  486. package/python3.4.2/lib/python3.4/encodings/gb2312.py +39 -0
  487. package/python3.4.2/lib/python3.4/encodings/gbk.py +39 -0
  488. package/python3.4.2/lib/python3.4/encodings/hex_codec.py +55 -0
  489. package/python3.4.2/lib/python3.4/encodings/hp_roman8.py +312 -0
  490. package/python3.4.2/lib/python3.4/encodings/hz.py +39 -0
  491. package/python3.4.2/lib/python3.4/encodings/idna.py +309 -0
  492. package/python3.4.2/lib/python3.4/encodings/iso2022_jp.py +39 -0
  493. package/python3.4.2/lib/python3.4/encodings/iso2022_jp_1.py +39 -0
  494. package/python3.4.2/lib/python3.4/encodings/iso2022_jp_2.py +39 -0
  495. package/python3.4.2/lib/python3.4/encodings/iso2022_jp_2004.py +39 -0
  496. package/python3.4.2/lib/python3.4/encodings/iso2022_jp_3.py +39 -0
  497. package/python3.4.2/lib/python3.4/encodings/iso2022_jp_ext.py +39 -0
  498. package/python3.4.2/lib/python3.4/encodings/iso2022_kr.py +39 -0
  499. package/python3.4.2/lib/python3.4/encodings/iso8859_1.py +307 -0
  500. package/python3.4.2/lib/python3.4/encodings/iso8859_10.py +307 -0
  501. package/python3.4.2/lib/python3.4/encodings/iso8859_11.py +307 -0
  502. package/python3.4.2/lib/python3.4/encodings/iso8859_13.py +307 -0
  503. package/python3.4.2/lib/python3.4/encodings/iso8859_14.py +307 -0
  504. package/python3.4.2/lib/python3.4/encodings/iso8859_15.py +307 -0
  505. package/python3.4.2/lib/python3.4/encodings/iso8859_16.py +307 -0
  506. package/python3.4.2/lib/python3.4/encodings/iso8859_2.py +307 -0
  507. package/python3.4.2/lib/python3.4/encodings/iso8859_3.py +307 -0
  508. package/python3.4.2/lib/python3.4/encodings/iso8859_4.py +307 -0
  509. package/python3.4.2/lib/python3.4/encodings/iso8859_5.py +307 -0
  510. package/python3.4.2/lib/python3.4/encodings/iso8859_6.py +307 -0
  511. package/python3.4.2/lib/python3.4/encodings/iso8859_7.py +307 -0
  512. package/python3.4.2/lib/python3.4/encodings/iso8859_8.py +307 -0
  513. package/python3.4.2/lib/python3.4/encodings/iso8859_9.py +307 -0
  514. package/python3.4.2/lib/python3.4/encodings/johab.py +39 -0
  515. package/python3.4.2/lib/python3.4/encodings/koi8_r.py +307 -0
  516. package/python3.4.2/lib/python3.4/encodings/koi8_u.py +307 -0
  517. package/python3.4.2/lib/python3.4/encodings/latin_1.py +50 -0
  518. package/python3.4.2/lib/python3.4/encodings/mac_arabic.py +698 -0
  519. package/python3.4.2/lib/python3.4/encodings/mac_centeuro.py +307 -0
  520. package/python3.4.2/lib/python3.4/encodings/mac_croatian.py +307 -0
  521. package/python3.4.2/lib/python3.4/encodings/mac_cyrillic.py +307 -0
  522. package/python3.4.2/lib/python3.4/encodings/mac_farsi.py +307 -0
  523. package/python3.4.2/lib/python3.4/encodings/mac_greek.py +307 -0
  524. package/python3.4.2/lib/python3.4/encodings/mac_iceland.py +307 -0
  525. package/python3.4.2/lib/python3.4/encodings/mac_latin2.py +312 -0
  526. package/python3.4.2/lib/python3.4/encodings/mac_roman.py +307 -0
  527. package/python3.4.2/lib/python3.4/encodings/mac_romanian.py +307 -0
  528. package/python3.4.2/lib/python3.4/encodings/mac_turkish.py +307 -0
  529. package/python3.4.2/lib/python3.4/encodings/mbcs.py +47 -0
  530. package/python3.4.2/lib/python3.4/encodings/palmos.py +308 -0
  531. package/python3.4.2/lib/python3.4/encodings/ptcp154.py +312 -0
  532. package/python3.4.2/lib/python3.4/encodings/punycode.py +237 -0
  533. package/python3.4.2/lib/python3.4/encodings/quopri_codec.py +56 -0
  534. package/python3.4.2/lib/python3.4/encodings/raw_unicode_escape.py +45 -0
  535. package/python3.4.2/lib/python3.4/encodings/rot_13.py +113 -0
  536. package/python3.4.2/lib/python3.4/encodings/shift_jis.py +39 -0
  537. package/python3.4.2/lib/python3.4/encodings/shift_jis_2004.py +39 -0
  538. package/python3.4.2/lib/python3.4/encodings/shift_jisx0213.py +39 -0
  539. package/python3.4.2/lib/python3.4/encodings/tis_620.py +307 -0
  540. package/python3.4.2/lib/python3.4/encodings/undefined.py +49 -0
  541. package/python3.4.2/lib/python3.4/encodings/unicode_escape.py +45 -0
  542. package/python3.4.2/lib/python3.4/encodings/unicode_internal.py +45 -0
  543. package/python3.4.2/lib/python3.4/encodings/utf_16.py +155 -0
  544. package/python3.4.2/lib/python3.4/encodings/utf_16_be.py +42 -0
  545. package/python3.4.2/lib/python3.4/encodings/utf_16_le.py +42 -0
  546. package/python3.4.2/lib/python3.4/encodings/utf_32.py +150 -0
  547. package/python3.4.2/lib/python3.4/encodings/utf_32_be.py +37 -0
  548. package/python3.4.2/lib/python3.4/encodings/utf_32_le.py +37 -0
  549. package/python3.4.2/lib/python3.4/encodings/utf_7.py +38 -0
  550. package/python3.4.2/lib/python3.4/encodings/utf_8.py +42 -0
  551. package/python3.4.2/lib/python3.4/encodings/utf_8_sig.py +130 -0
  552. package/python3.4.2/lib/python3.4/encodings/uu_codec.py +99 -0
  553. package/python3.4.2/lib/python3.4/encodings/zlib_codec.py +77 -0
  554. package/python3.4.2/lib/python3.4/ensurepip/__init__.py +210 -0
  555. package/python3.4.2/lib/python3.4/ensurepip/__main__.py +4 -0
  556. package/python3.4.2/lib/python3.4/ensurepip/_bundled/pip-1.5.6-py2.py3-none-any.whl +0 -0
  557. package/python3.4.2/lib/python3.4/ensurepip/_bundled/setuptools-2.1-py2.py3-none-any.whl +0 -0
  558. package/python3.4.2/lib/python3.4/ensurepip/_uninstall.py +30 -0
  559. package/python3.4.2/lib/python3.4/enum.py +525 -0
  560. package/python3.4.2/lib/python3.4/filecmp.py +305 -0
  561. package/python3.4.2/lib/python3.4/fileinput.py +429 -0
  562. package/python3.4.2/lib/python3.4/fnmatch.py +109 -0
  563. package/python3.4.2/lib/python3.4/formatter.py +448 -0
  564. package/python3.4.2/lib/python3.4/fractions.py +630 -0
  565. package/python3.4.2/lib/python3.4/ftplib.py +1088 -0
  566. package/python3.4.2/lib/python3.4/functools.py +721 -0
  567. package/python3.4.2/lib/python3.4/genericpath.py +132 -0
  568. package/python3.4.2/lib/python3.4/getopt.py +215 -0
  569. package/python3.4.2/lib/python3.4/getpass.py +186 -0
  570. package/python3.4.2/lib/python3.4/gettext.py +523 -0
  571. package/python3.4.2/lib/python3.4/glob.py +110 -0
  572. package/python3.4.2/lib/python3.4/gzip.py +674 -0
  573. package/python3.4.2/lib/python3.4/hashlib.py +217 -0
  574. package/python3.4.2/lib/python3.4/heapq.py +476 -0
  575. package/python3.4.2/lib/python3.4/hmac.py +144 -0
  576. package/python3.4.2/lib/python3.4/html/__init__.py +132 -0
  577. package/python3.4.2/lib/python3.4/html/entities.py +2506 -0
  578. package/python3.4.2/lib/python3.4/html/parser.py +550 -0
  579. package/python3.4.2/lib/python3.4/http/__init__.py +1 -0
  580. package/python3.4.2/lib/python3.4/http/client.py +1302 -0
  581. package/python3.4.2/lib/python3.4/http/cookiejar.py +2080 -0
  582. package/python3.4.2/lib/python3.4/http/cookies.py +578 -0
  583. package/python3.4.2/lib/python3.4/http/server.py +1241 -0
  584. package/python3.4.2/lib/python3.4/idlelib/AutoComplete.py +233 -0
  585. package/python3.4.2/lib/python3.4/idlelib/AutoCompleteWindow.py +415 -0
  586. package/python3.4.2/lib/python3.4/idlelib/AutoExpand.py +104 -0
  587. package/python3.4.2/lib/python3.4/idlelib/Bindings.py +94 -0
  588. package/python3.4.2/lib/python3.4/idlelib/CREDITS.txt +37 -0
  589. package/python3.4.2/lib/python3.4/idlelib/CallTipWindow.py +170 -0
  590. package/python3.4.2/lib/python3.4/idlelib/CallTips.py +175 -0
  591. package/python3.4.2/lib/python3.4/idlelib/ChangeLog +1591 -0
  592. package/python3.4.2/lib/python3.4/idlelib/ClassBrowser.py +229 -0
  593. package/python3.4.2/lib/python3.4/idlelib/CodeContext.py +176 -0
  594. package/python3.4.2/lib/python3.4/idlelib/ColorDelegator.py +254 -0
  595. package/python3.4.2/lib/python3.4/idlelib/Debugger.py +490 -0
  596. package/python3.4.2/lib/python3.4/idlelib/Delegator.py +25 -0
  597. package/python3.4.2/lib/python3.4/idlelib/EditorWindow.py +1729 -0
  598. package/python3.4.2/lib/python3.4/idlelib/FileList.py +129 -0
  599. package/python3.4.2/lib/python3.4/idlelib/FormatParagraph.py +193 -0
  600. package/python3.4.2/lib/python3.4/idlelib/GrepDialog.py +159 -0
  601. package/python3.4.2/lib/python3.4/idlelib/HISTORY.txt +296 -0
  602. package/python3.4.2/lib/python3.4/idlelib/HyperParser.py +313 -0
  603. package/python3.4.2/lib/python3.4/idlelib/IOBinding.py +555 -0
  604. package/python3.4.2/lib/python3.4/idlelib/Icons/folder.gif +0 -0
  605. package/python3.4.2/lib/python3.4/idlelib/Icons/idle.icns +0 -0
  606. package/python3.4.2/lib/python3.4/idlelib/Icons/idle.ico +0 -0
  607. package/python3.4.2/lib/python3.4/idlelib/Icons/idle_16.gif +0 -0
  608. package/python3.4.2/lib/python3.4/idlelib/Icons/idle_16.png +0 -0
  609. package/python3.4.2/lib/python3.4/idlelib/Icons/idle_32.gif +0 -0
  610. package/python3.4.2/lib/python3.4/idlelib/Icons/idle_32.png +0 -0
  611. package/python3.4.2/lib/python3.4/idlelib/Icons/idle_48.gif +0 -0
  612. package/python3.4.2/lib/python3.4/idlelib/Icons/idle_48.png +0 -0
  613. package/python3.4.2/lib/python3.4/idlelib/Icons/minusnode.gif +0 -0
  614. package/python3.4.2/lib/python3.4/idlelib/Icons/openfolder.gif +0 -0
  615. package/python3.4.2/lib/python3.4/idlelib/Icons/plusnode.gif +0 -0
  616. package/python3.4.2/lib/python3.4/idlelib/Icons/python.gif +0 -0
  617. package/python3.4.2/lib/python3.4/idlelib/Icons/tk.gif +0 -0
  618. package/python3.4.2/lib/python3.4/idlelib/IdleHistory.py +104 -0
  619. package/python3.4.2/lib/python3.4/idlelib/MultiCall.py +453 -0
  620. package/python3.4.2/lib/python3.4/idlelib/MultiStatusBar.py +45 -0
  621. package/python3.4.2/lib/python3.4/idlelib/NEWS.txt +877 -0
  622. package/python3.4.2/lib/python3.4/idlelib/ObjectBrowser.py +143 -0
  623. package/python3.4.2/lib/python3.4/idlelib/OutputWindow.py +144 -0
  624. package/python3.4.2/lib/python3.4/idlelib/ParenMatch.py +178 -0
  625. package/python3.4.2/lib/python3.4/idlelib/PathBrowser.py +106 -0
  626. package/python3.4.2/lib/python3.4/idlelib/Percolator.py +104 -0
  627. package/python3.4.2/lib/python3.4/idlelib/PyParse.py +618 -0
  628. package/python3.4.2/lib/python3.4/idlelib/PyShell.py +1619 -0
  629. package/python3.4.2/lib/python3.4/idlelib/README.txt +60 -0
  630. package/python3.4.2/lib/python3.4/idlelib/RemoteDebugger.py +389 -0
  631. package/python3.4.2/lib/python3.4/idlelib/RemoteObjectBrowser.py +36 -0
  632. package/python3.4.2/lib/python3.4/idlelib/ReplaceDialog.py +221 -0
  633. package/python3.4.2/lib/python3.4/idlelib/RstripExtension.py +33 -0
  634. package/python3.4.2/lib/python3.4/idlelib/ScriptBinding.py +207 -0
  635. package/python3.4.2/lib/python3.4/idlelib/ScrolledList.py +140 -0
  636. package/python3.4.2/lib/python3.4/idlelib/SearchDialog.py +89 -0
  637. package/python3.4.2/lib/python3.4/idlelib/SearchDialogBase.py +184 -0
  638. package/python3.4.2/lib/python3.4/idlelib/SearchEngine.py +233 -0
  639. package/python3.4.2/lib/python3.4/idlelib/StackViewer.py +152 -0
  640. package/python3.4.2/lib/python3.4/idlelib/TODO.txt +210 -0
  641. package/python3.4.2/lib/python3.4/idlelib/ToolTip.py +97 -0
  642. package/python3.4.2/lib/python3.4/idlelib/TreeWidget.py +465 -0
  643. package/python3.4.2/lib/python3.4/idlelib/UndoDelegator.py +365 -0
  644. package/python3.4.2/lib/python3.4/idlelib/WidgetRedirector.py +174 -0
  645. package/python3.4.2/lib/python3.4/idlelib/WindowList.py +90 -0
  646. package/python3.4.2/lib/python3.4/idlelib/ZoomHeight.py +51 -0
  647. package/python3.4.2/lib/python3.4/idlelib/__init__.py +1 -0
  648. package/python3.4.2/lib/python3.4/idlelib/__main__.py +9 -0
  649. package/python3.4.2/lib/python3.4/idlelib/aboutDialog.py +145 -0
  650. package/python3.4.2/lib/python3.4/idlelib/config-extensions.def +96 -0
  651. package/python3.4.2/lib/python3.4/idlelib/config-highlight.def +64 -0
  652. package/python3.4.2/lib/python3.4/idlelib/config-keys.def +214 -0
  653. package/python3.4.2/lib/python3.4/idlelib/config-main.def +79 -0
  654. package/python3.4.2/lib/python3.4/idlelib/configDialog.py +1195 -0
  655. package/python3.4.2/lib/python3.4/idlelib/configHandler.py +722 -0
  656. package/python3.4.2/lib/python3.4/idlelib/configHelpSourceEdit.py +166 -0
  657. package/python3.4.2/lib/python3.4/idlelib/configSectionNameDialog.py +98 -0
  658. package/python3.4.2/lib/python3.4/idlelib/dynOptionMenuWidget.py +57 -0
  659. package/python3.4.2/lib/python3.4/idlelib/extend.txt +83 -0
  660. package/python3.4.2/lib/python3.4/idlelib/help.txt +368 -0
  661. package/python3.4.2/lib/python3.4/idlelib/idle.bat +4 -0
  662. package/python3.4.2/lib/python3.4/idlelib/idle.py +11 -0
  663. package/python3.4.2/lib/python3.4/idlelib/idle.pyw +21 -0
  664. package/python3.4.2/lib/python3.4/idlelib/idle_test/README.txt +115 -0
  665. package/python3.4.2/lib/python3.4/idlelib/idle_test/__init__.py +9 -0
  666. package/python3.4.2/lib/python3.4/idlelib/idle_test/htest.py +369 -0
  667. package/python3.4.2/lib/python3.4/idlelib/idle_test/mock_idle.py +55 -0
  668. package/python3.4.2/lib/python3.4/idlelib/idle_test/mock_tk.py +298 -0
  669. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_autocomplete.py +143 -0
  670. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_autoexpand.py +141 -0
  671. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_calltips.py +172 -0
  672. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_config_name.py +75 -0
  673. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_configdialog.py +32 -0
  674. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_delegator.py +37 -0
  675. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_formatparagraph.py +377 -0
  676. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_grep.py +80 -0
  677. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_hyperparser.py +273 -0
  678. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_idlehistory.py +167 -0
  679. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_parenmatch.py +109 -0
  680. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_pathbrowser.py +12 -0
  681. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_rstrip.py +49 -0
  682. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_searchdialogbase.py +165 -0
  683. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_searchengine.py +329 -0
  684. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_text.py +228 -0
  685. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_textview.py +97 -0
  686. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_warning.py +73 -0
  687. package/python3.4.2/lib/python3.4/idlelib/idle_test/test_widgetredir.py +122 -0
  688. package/python3.4.2/lib/python3.4/idlelib/idlever.py +1 -0
  689. package/python3.4.2/lib/python3.4/idlelib/keybindingDialog.py +266 -0
  690. package/python3.4.2/lib/python3.4/idlelib/macosxSupport.py +239 -0
  691. package/python3.4.2/lib/python3.4/idlelib/rpc.py +624 -0
  692. package/python3.4.2/lib/python3.4/idlelib/run.py +404 -0
  693. package/python3.4.2/lib/python3.4/idlelib/tabbedpages.py +498 -0
  694. package/python3.4.2/lib/python3.4/idlelib/testcode.py +31 -0
  695. package/python3.4.2/lib/python3.4/idlelib/textView.py +86 -0
  696. package/python3.4.2/lib/python3.4/imaplib.py +1549 -0
  697. package/python3.4.2/lib/python3.4/imghdr.py +154 -0
  698. package/python3.4.2/lib/python3.4/imp.py +315 -0
  699. package/python3.4.2/lib/python3.4/importlib/__init__.py +156 -0
  700. package/python3.4.2/lib/python3.4/importlib/_bootstrap.py +2461 -0
  701. package/python3.4.2/lib/python3.4/importlib/abc.py +323 -0
  702. package/python3.4.2/lib/python3.4/importlib/machinery.py +21 -0
  703. package/python3.4.2/lib/python3.4/importlib/util.py +202 -0
  704. package/python3.4.2/lib/python3.4/inspect.py +2759 -0
  705. package/python3.4.2/lib/python3.4/io.py +92 -0
  706. package/python3.4.2/lib/python3.4/ipaddress.py +2183 -0
  707. package/python3.4.2/lib/python3.4/json/__init__.py +331 -0
  708. package/python3.4.2/lib/python3.4/json/decoder.py +362 -0
  709. package/python3.4.2/lib/python3.4/json/encoder.py +433 -0
  710. package/python3.4.2/lib/python3.4/json/scanner.py +73 -0
  711. package/python3.4.2/lib/python3.4/json/tool.py +39 -0
  712. package/python3.4.2/lib/python3.4/keyword.py +94 -0
  713. package/python3.4.2/lib/python3.4/lib2to3/Grammar.txt +159 -0
  714. package/python3.4.2/lib/python3.4/lib2to3/Grammar3.4.2.final.0.pickle +0 -0
  715. package/python3.4.2/lib/python3.4/lib2to3/PatternGrammar.txt +28 -0
  716. package/python3.4.2/lib/python3.4/lib2to3/PatternGrammar3.4.2.final.0.pickle +0 -0
  717. package/python3.4.2/lib/python3.4/lib2to3/__init__.py +1 -0
  718. package/python3.4.2/lib/python3.4/lib2to3/__main__.py +4 -0
  719. package/python3.4.2/lib/python3.4/lib2to3/btm_matcher.py +168 -0
  720. package/python3.4.2/lib/python3.4/lib2to3/btm_utils.py +281 -0
  721. package/python3.4.2/lib/python3.4/lib2to3/fixer_base.py +187 -0
  722. package/python3.4.2/lib/python3.4/lib2to3/fixer_util.py +455 -0
  723. package/python3.4.2/lib/python3.4/lib2to3/fixes/__init__.py +1 -0
  724. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_apply.py +59 -0
  725. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_asserts.py +34 -0
  726. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_basestring.py +14 -0
  727. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_buffer.py +22 -0
  728. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_callable.py +37 -0
  729. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_dict.py +107 -0
  730. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_except.py +93 -0
  731. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_exec.py +40 -0
  732. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_execfile.py +52 -0
  733. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_exitfunc.py +72 -0
  734. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_filter.py +76 -0
  735. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_funcattrs.py +21 -0
  736. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_future.py +22 -0
  737. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_getcwdu.py +19 -0
  738. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_has_key.py +110 -0
  739. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_idioms.py +152 -0
  740. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_import.py +99 -0
  741. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_imports.py +145 -0
  742. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_imports2.py +16 -0
  743. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_input.py +26 -0
  744. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_intern.py +31 -0
  745. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_isinstance.py +52 -0
  746. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_itertools.py +43 -0
  747. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_itertools_imports.py +57 -0
  748. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_long.py +19 -0
  749. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_map.py +91 -0
  750. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_metaclass.py +228 -0
  751. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_methodattrs.py +24 -0
  752. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_ne.py +23 -0
  753. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_next.py +103 -0
  754. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_nonzero.py +21 -0
  755. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_numliterals.py +28 -0
  756. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_operator.py +98 -0
  757. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_paren.py +44 -0
  758. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_print.py +87 -0
  759. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_raise.py +90 -0
  760. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_raw_input.py +17 -0
  761. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_reduce.py +35 -0
  762. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_reload.py +28 -0
  763. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_renames.py +70 -0
  764. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_repr.py +23 -0
  765. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_set_literal.py +53 -0
  766. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_standarderror.py +18 -0
  767. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_sys_exc.py +30 -0
  768. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_throw.py +56 -0
  769. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_tuple_params.py +175 -0
  770. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_types.py +62 -0
  771. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_unicode.py +42 -0
  772. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_urllib.py +197 -0
  773. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_ws_comma.py +39 -0
  774. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_xrange.py +73 -0
  775. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_xreadlines.py +25 -0
  776. package/python3.4.2/lib/python3.4/lib2to3/fixes/fix_zip.py +35 -0
  777. package/python3.4.2/lib/python3.4/lib2to3/main.py +268 -0
  778. package/python3.4.2/lib/python3.4/lib2to3/patcomp.py +205 -0
  779. package/python3.4.2/lib/python3.4/lib2to3/pgen2/__init__.py +4 -0
  780. package/python3.4.2/lib/python3.4/lib2to3/pgen2/conv.py +257 -0
  781. package/python3.4.2/lib/python3.4/lib2to3/pgen2/driver.py +157 -0
  782. package/python3.4.2/lib/python3.4/lib2to3/pgen2/grammar.py +183 -0
  783. package/python3.4.2/lib/python3.4/lib2to3/pgen2/literals.py +60 -0
  784. package/python3.4.2/lib/python3.4/lib2to3/pgen2/parse.py +201 -0
  785. package/python3.4.2/lib/python3.4/lib2to3/pgen2/pgen.py +386 -0
  786. package/python3.4.2/lib/python3.4/lib2to3/pgen2/token.py +83 -0
  787. package/python3.4.2/lib/python3.4/lib2to3/pgen2/tokenize.py +502 -0
  788. package/python3.4.2/lib/python3.4/lib2to3/pygram.py +40 -0
  789. package/python3.4.2/lib/python3.4/lib2to3/pytree.py +864 -0
  790. package/python3.4.2/lib/python3.4/lib2to3/refactor.py +747 -0
  791. package/python3.4.2/lib/python3.4/lib2to3/tests/__init__.py +24 -0
  792. package/python3.4.2/lib/python3.4/lib2to3/tests/data/README +6 -0
  793. package/python3.4.2/lib/python3.4/lib2to3/tests/data/bom.py +2 -0
  794. package/python3.4.2/lib/python3.4/lib2to3/tests/data/crlf.py +3 -0
  795. package/python3.4.2/lib/python3.4/lib2to3/tests/data/different_encoding.py +6 -0
  796. package/python3.4.2/lib/python3.4/lib2to3/tests/data/false_encoding.py +2 -0
  797. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/bad_order.py +5 -0
  798. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/myfixes/__init__.py +0 -0
  799. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/myfixes/fix_explicit.py +6 -0
  800. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/myfixes/fix_first.py +6 -0
  801. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/myfixes/fix_last.py +7 -0
  802. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/myfixes/fix_parrot.py +13 -0
  803. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/myfixes/fix_preorder.py +6 -0
  804. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/no_fixer_cls.py +1 -0
  805. package/python3.4.2/lib/python3.4/lib2to3/tests/data/fixers/parrot_example.py +2 -0
  806. package/python3.4.2/lib/python3.4/lib2to3/tests/data/infinite_recursion.py +2669 -0
  807. package/python3.4.2/lib/python3.4/lib2to3/tests/data/py2_test_grammar.py +974 -0
  808. package/python3.4.2/lib/python3.4/lib2to3/tests/data/py3_test_grammar.py +923 -0
  809. package/python3.4.2/lib/python3.4/lib2to3/tests/pytree_idempotency.py +92 -0
  810. package/python3.4.2/lib/python3.4/lib2to3/tests/support.py +54 -0
  811. package/python3.4.2/lib/python3.4/lib2to3/tests/test_all_fixers.py +23 -0
  812. package/python3.4.2/lib/python3.4/lib2to3/tests/test_fixers.py +4687 -0
  813. package/python3.4.2/lib/python3.4/lib2to3/tests/test_main.py +139 -0
  814. package/python3.4.2/lib/python3.4/lib2to3/tests/test_parser.py +249 -0
  815. package/python3.4.2/lib/python3.4/lib2to3/tests/test_pytree.py +477 -0
  816. package/python3.4.2/lib/python3.4/lib2to3/tests/test_refactor.py +321 -0
  817. package/python3.4.2/lib/python3.4/lib2to3/tests/test_util.py +594 -0
  818. package/python3.4.2/lib/python3.4/linecache.py +134 -0
  819. package/python3.4.2/lib/python3.4/locale.py +1559 -0
  820. package/python3.4.2/lib/python3.4/logging/__init__.py +1950 -0
  821. package/python3.4.2/lib/python3.4/logging/config.py +927 -0
  822. package/python3.4.2/lib/python3.4/logging/handlers.py +1452 -0
  823. package/python3.4.2/lib/python3.4/lzma.py +511 -0
  824. package/python3.4.2/lib/python3.4/macpath.py +205 -0
  825. package/python3.4.2/lib/python3.4/macurl2path.py +77 -0
  826. package/python3.4.2/lib/python3.4/mailbox.py +2136 -0
  827. package/python3.4.2/lib/python3.4/mailcap.py +253 -0
  828. package/python3.4.2/lib/python3.4/mimetypes.py +592 -0
  829. package/python3.4.2/lib/python3.4/modulefinder.py +642 -0
  830. package/python3.4.2/lib/python3.4/multiprocessing/__init__.py +38 -0
  831. package/python3.4.2/lib/python3.4/multiprocessing/connection.py +954 -0
  832. package/python3.4.2/lib/python3.4/multiprocessing/context.py +348 -0
  833. package/python3.4.2/lib/python3.4/multiprocessing/dummy/__init__.py +119 -0
  834. package/python3.4.2/lib/python3.4/multiprocessing/dummy/connection.py +74 -0
  835. package/python3.4.2/lib/python3.4/multiprocessing/forkserver.py +267 -0
  836. package/python3.4.2/lib/python3.4/multiprocessing/heap.py +249 -0
  837. package/python3.4.2/lib/python3.4/multiprocessing/managers.py +1131 -0
  838. package/python3.4.2/lib/python3.4/multiprocessing/pool.py +769 -0
  839. package/python3.4.2/lib/python3.4/multiprocessing/popen_fork.py +83 -0
  840. package/python3.4.2/lib/python3.4/multiprocessing/popen_forkserver.py +69 -0
  841. package/python3.4.2/lib/python3.4/multiprocessing/popen_spawn_posix.py +69 -0
  842. package/python3.4.2/lib/python3.4/multiprocessing/popen_spawn_win32.py +99 -0
  843. package/python3.4.2/lib/python3.4/multiprocessing/process.py +332 -0
  844. package/python3.4.2/lib/python3.4/multiprocessing/queues.py +367 -0
  845. package/python3.4.2/lib/python3.4/multiprocessing/reduction.py +240 -0
  846. package/python3.4.2/lib/python3.4/multiprocessing/resource_sharer.py +158 -0
  847. package/python3.4.2/lib/python3.4/multiprocessing/semaphore_tracker.py +143 -0
  848. package/python3.4.2/lib/python3.4/multiprocessing/sharedctypes.py +245 -0
  849. package/python3.4.2/lib/python3.4/multiprocessing/spawn.py +287 -0
  850. package/python3.4.2/lib/python3.4/multiprocessing/synchronize.py +418 -0
  851. package/python3.4.2/lib/python3.4/multiprocessing/util.py +367 -0
  852. package/python3.4.2/lib/python3.4/netrc.py +142 -0
  853. package/python3.4.2/lib/python3.4/nntplib.py +1134 -0
  854. package/python3.4.2/lib/python3.4/ntpath.py +625 -0
  855. package/python3.4.2/lib/python3.4/nturl2path.py +66 -0
  856. package/python3.4.2/lib/python3.4/numbers.py +394 -0
  857. package/python3.4.2/lib/python3.4/opcode.py +200 -0
  858. package/python3.4.2/lib/python3.4/operator.py +411 -0
  859. package/python3.4.2/lib/python3.4/optparse.py +1680 -0
  860. package/python3.4.2/lib/python3.4/os.py +980 -0
  861. package/python3.4.2/lib/python3.4/pathlib.py +1291 -0
  862. package/python3.4.2/lib/python3.4/pdb.py +1685 -0
  863. package/python3.4.2/lib/python3.4/pickle.py +1599 -0
  864. package/python3.4.2/lib/python3.4/pickletools.py +2818 -0
  865. package/python3.4.2/lib/python3.4/pipes.py +247 -0
  866. package/python3.4.2/lib/python3.4/pkgutil.py +629 -0
  867. package/python3.4.2/lib/python3.4/plat-linux/CDROM.py +207 -0
  868. package/python3.4.2/lib/python3.4/plat-linux/DLFCN.py +83 -0
  869. package/python3.4.2/lib/python3.4/plat-linux/IN.py +615 -0
  870. package/python3.4.2/lib/python3.4/plat-linux/TYPES.py +170 -0
  871. package/python3.4.2/lib/python3.4/plat-linux/regen +8 -0
  872. package/python3.4.2/lib/python3.4/platform.py +1476 -0
  873. package/python3.4.2/lib/python3.4/plistlib.py +1025 -0
  874. package/python3.4.2/lib/python3.4/poplib.py +461 -0
  875. package/python3.4.2/lib/python3.4/posixpath.py +457 -0
  876. package/python3.4.2/lib/python3.4/pprint.py +416 -0
  877. package/python3.4.2/lib/python3.4/profile.py +589 -0
  878. package/python3.4.2/lib/python3.4/pstats.py +691 -0
  879. package/python3.4.2/lib/python3.4/pty.py +170 -0
  880. package/python3.4.2/lib/python3.4/py_compile.py +185 -0
  881. package/python3.4.2/lib/python3.4/pyclbr.py +351 -0
  882. package/python3.4.2/lib/python3.4/pydoc.py +2622 -0
  883. package/python3.4.2/lib/python3.4/pydoc_data/__init__.py +0 -0
  884. package/python3.4.2/lib/python3.4/pydoc_data/_pydoc.css +6 -0
  885. package/python3.4.2/lib/python3.4/pydoc_data/topics.py +79 -0
  886. package/python3.4.2/lib/python3.4/queue.py +249 -0
  887. package/python3.4.2/lib/python3.4/quopri.py +242 -0
  888. package/python3.4.2/lib/python3.4/random.py +742 -0
  889. package/python3.4.2/lib/python3.4/re.py +368 -0
  890. package/python3.4.2/lib/python3.4/reprlib.py +157 -0
  891. package/python3.4.2/lib/python3.4/rlcompleter.py +165 -0
  892. package/python3.4.2/lib/python3.4/runpy.py +271 -0
  893. package/python3.4.2/lib/python3.4/sched.py +167 -0
  894. package/python3.4.2/lib/python3.4/selectors.py +525 -0
  895. package/python3.4.2/lib/python3.4/shelve.py +239 -0
  896. package/python3.4.2/lib/python3.4/shlex.py +304 -0
  897. package/python3.4.2/lib/python3.4/shutil.py +1127 -0
  898. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/PKG-INFO +55 -0
  899. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/SOURCES.txt +126 -0
  900. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/dependency_links.txt +1 -0
  901. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/entry_points.txt +4 -0
  902. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/not-zip-safe +1 -0
  903. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/requires.txt +4 -0
  904. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/EGG-INFO/top_level.txt +1 -0
  905. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/__init__.py +69 -0
  906. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/_compat.py +150 -0
  907. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/_stringdefs.py +132 -0
  908. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/bccache.py +344 -0
  909. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/compiler.py +1640 -0
  910. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/constants.py +32 -0
  911. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/debug.py +337 -0
  912. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/defaults.py +43 -0
  913. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/environment.py +1191 -0
  914. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/exceptions.py +146 -0
  915. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/ext.py +636 -0
  916. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/filters.py +987 -0
  917. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/lexer.py +733 -0
  918. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/loaders.py +471 -0
  919. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/meta.py +103 -0
  920. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/nodes.py +914 -0
  921. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/optimizer.py +68 -0
  922. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/parser.py +895 -0
  923. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/runtime.py +581 -0
  924. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/sandbox.py +368 -0
  925. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/tests.py +149 -0
  926. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/__init__.py +156 -0
  927. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/api.py +261 -0
  928. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/bytecode_cache.py +37 -0
  929. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/core_tags.py +305 -0
  930. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/debug.py +58 -0
  931. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/doctests.py +29 -0
  932. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/ext.py +459 -0
  933. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/filters.py +515 -0
  934. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/imports.py +141 -0
  935. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/inheritance.py +250 -0
  936. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/lexnparse.py +593 -0
  937. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/loader.py +226 -0
  938. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/regression.py +279 -0
  939. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/res/__init__.py +0 -0
  940. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/res/templates/broken.html +3 -0
  941. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/res/templates/foo/test.html +1 -0
  942. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/res/templates/syntaxerror.html +4 -0
  943. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/res/templates/test.html +1 -0
  944. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/security.py +166 -0
  945. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/tests.py +93 -0
  946. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/testsuite/utils.py +82 -0
  947. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/utils.py +520 -0
  948. package/python3.4.2/lib/python3.4/site-packages/Jinja2-2.7.3-py3.4.egg/jinja2/visitor.py +87 -0
  949. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/EGG-INFO/PKG-INFO +119 -0
  950. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/EGG-INFO/SOURCES.txt +17 -0
  951. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/EGG-INFO/dependency_links.txt +1 -0
  952. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/EGG-INFO/not-zip-safe +1 -0
  953. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/EGG-INFO/top_level.txt +1 -0
  954. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/markupsafe/__init__.py +298 -0
  955. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/markupsafe/_compat.py +26 -0
  956. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/markupsafe/_constants.py +267 -0
  957. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/markupsafe/_native.py +46 -0
  958. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/markupsafe/_speedups.c +239 -0
  959. package/python3.4.2/lib/python3.4/site-packages/MarkupSafe-0.23-py3.4.egg/markupsafe/tests.py +179 -0
  960. package/python3.4.2/lib/python3.4/site-packages/README +2 -0
  961. package/python3.4.2/lib/python3.4/site-packages/_markerlib/__init__.py +16 -0
  962. package/python3.4.2/lib/python3.4/site-packages/_markerlib/markers.py +119 -0
  963. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/PKG-INFO +68 -0
  964. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/SOURCES.txt +23 -0
  965. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/dependency_links.txt +1 -0
  966. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/entry_points.txt +3 -0
  967. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/not-zip-safe +1 -0
  968. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/requires.txt +1 -0
  969. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/scripts/android-debian-builder +6 -0
  970. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/EGG-INFO/top_level.txt +1 -0
  971. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/__init__.py +0 -0
  972. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/__main__.py +26 -0
  973. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/build.py +63 -0
  974. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/config.py +82 -0
  975. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/data/deb.sh +106 -0
  976. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/data/default-config +42 -0
  977. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/data/first-time-setup.sh +94 -0
  978. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/data/init.sh +27 -0
  979. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/examples/jessie-armhf.cfg +26 -0
  980. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/run_tests.py +38 -0
  981. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/script.py +110 -0
  982. package/python3.4.2/lib/python3.4/site-packages/android_debian_builder-1.0-py3.4.egg/android_debian_builder/util.py +177 -0
  983. package/python3.4.2/lib/python3.4/site-packages/easy-install.pth +4 -0
  984. package/python3.4.2/lib/python3.4/site-packages/easy_install.py +5 -0
  985. package/python3.4.2/lib/python3.4/site-packages/pip/__init__.py +277 -0
  986. package/python3.4.2/lib/python3.4/site-packages/pip/__main__.py +7 -0
  987. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/__init__.py +8 -0
  988. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/_markerlib/__init__.py +16 -0
  989. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/_markerlib/markers.py +119 -0
  990. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/__init__.py +7 -0
  991. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/ansi.py +50 -0
  992. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/ansitowin32.py +190 -0
  993. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/initialise.py +56 -0
  994. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py +137 -0
  995. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/winterm.py +120 -0
  996. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py +23 -0
  997. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__init__.py +6 -0
  998. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/misc.py +41 -0
  999. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/shutil.py +761 -0
  1000. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg +84 -0
  1001. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.py +788 -0
  1002. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py +2607 -0
  1003. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py +1064 -0
  1004. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/database.py +1301 -0
  1005. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/index.py +488 -0
  1006. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py +1194 -0
  1007. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/manifest.py +364 -0
  1008. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/markers.py +190 -0
  1009. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py +1026 -0
  1010. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py +317 -0
  1011. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py +323 -0
  1012. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  1013. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  1014. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/util.py +1575 -0
  1015. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/version.py +721 -0
  1016. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  1017. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  1018. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/wheel.py +958 -0
  1019. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py +23 -0
  1020. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py +3104 -0
  1021. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/__init__.py +0 -0
  1022. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/_base.py +12 -0
  1023. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py +20 -0
  1024. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py +65 -0
  1025. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py +93 -0
  1026. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py +205 -0
  1027. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py +12 -0
  1028. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/whitespace.py +38 -0
  1029. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py +2713 -0
  1030. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/ihatexml.py +285 -0
  1031. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/inputstream.py +881 -0
  1032. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/sanitizer.py +271 -0
  1033. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer/__init__.py +16 -0
  1034. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer/htmlserializer.py +320 -0
  1035. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/tokenizer.py +1731 -0
  1036. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py +0 -0
  1037. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/sax.py +44 -0
  1038. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py +76 -0
  1039. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/_base.py +377 -0
  1040. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.py +227 -0
  1041. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree.py +337 -0
  1042. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py +369 -0
  1043. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py +57 -0
  1044. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/_base.py +200 -0
  1045. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/dom.py +46 -0
  1046. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/etree.py +138 -0
  1047. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/genshistream.py +69 -0
  1048. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/lxmletree.py +208 -0
  1049. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/pulldom.py +63 -0
  1050. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/trie/__init__.py +12 -0
  1051. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/trie/_base.py +37 -0
  1052. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/trie/datrie.py +44 -0
  1053. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/trie/py.py +67 -0
  1054. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/utils.py +82 -0
  1055. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pkg_resources.py +2762 -0
  1056. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/re-vendor.py +34 -0
  1057. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/__init__.py +77 -0
  1058. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/adapters.py +388 -0
  1059. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/api.py +120 -0
  1060. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/auth.py +193 -0
  1061. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/cacert.pem +5026 -0
  1062. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/certs.py +24 -0
  1063. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/compat.py +115 -0
  1064. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/cookies.py +454 -0
  1065. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/exceptions.py +75 -0
  1066. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/hooks.py +45 -0
  1067. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/models.py +803 -0
  1068. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/__init__.py +3 -0
  1069. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/__init__.py +32 -0
  1070. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/big5freq.py +925 -0
  1071. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/big5prober.py +42 -0
  1072. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/chardetect.py +46 -0
  1073. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/chardistribution.py +231 -0
  1074. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetgroupprober.py +106 -0
  1075. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetprober.py +62 -0
  1076. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/codingstatemachine.py +61 -0
  1077. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/compat.py +34 -0
  1078. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/constants.py +39 -0
  1079. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/cp949prober.py +44 -0
  1080. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escprober.py +86 -0
  1081. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escsm.py +242 -0
  1082. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/eucjpprober.py +90 -0
  1083. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euckrfreq.py +596 -0
  1084. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euckrprober.py +42 -0
  1085. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euctwfreq.py +428 -0
  1086. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euctwprober.py +41 -0
  1087. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/gb2312freq.py +472 -0
  1088. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/gb2312prober.py +41 -0
  1089. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/hebrewprober.py +283 -0
  1090. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/jisfreq.py +569 -0
  1091. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/jpcntx.py +219 -0
  1092. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langbulgarianmodel.py +229 -0
  1093. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langcyrillicmodel.py +329 -0
  1094. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langgreekmodel.py +225 -0
  1095. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langhebrewmodel.py +201 -0
  1096. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langhungarianmodel.py +225 -0
  1097. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/langthaimodel.py +200 -0
  1098. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/latin1prober.py +139 -0
  1099. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcharsetprober.py +86 -0
  1100. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcsgroupprober.py +54 -0
  1101. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcssm.py +575 -0
  1102. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sbcharsetprober.py +120 -0
  1103. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sbcsgroupprober.py +69 -0
  1104. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sjisprober.py +91 -0
  1105. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/universaldetector.py +170 -0
  1106. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/utf8prober.py +76 -0
  1107. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py +58 -0
  1108. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/_collections.py +205 -0
  1109. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/connection.py +204 -0
  1110. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.py +710 -0
  1111. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/__init__.py +0 -0
  1112. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/ntlmpool.py +120 -0
  1113. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py +422 -0
  1114. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/exceptions.py +126 -0
  1115. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/fields.py +177 -0
  1116. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/filepost.py +100 -0
  1117. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/__init__.py +4 -0
  1118. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ordered_dict.py +260 -0
  1119. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/six.py +385 -0
  1120. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py +13 -0
  1121. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.py +105 -0
  1122. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/poolmanager.py +258 -0
  1123. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/request.py +141 -0
  1124. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/response.py +308 -0
  1125. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__init__.py +27 -0
  1126. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/connection.py +45 -0
  1127. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/request.py +68 -0
  1128. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/response.py +13 -0
  1129. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py +133 -0
  1130. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/timeout.py +234 -0
  1131. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/url.py +162 -0
  1132. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/sessions.py +637 -0
  1133. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/status_codes.py +88 -0
  1134. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/structures.py +127 -0
  1135. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/utils.py +673 -0
  1136. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/six.py +646 -0
  1137. package/python3.4.2/lib/python3.4/site-packages/pip/backwardcompat/__init__.py +138 -0
  1138. package/python3.4.2/lib/python3.4/site-packages/pip/basecommand.py +201 -0
  1139. package/python3.4.2/lib/python3.4/site-packages/pip/baseparser.py +224 -0
  1140. package/python3.4.2/lib/python3.4/site-packages/pip/cmdoptions.py +371 -0
  1141. package/python3.4.2/lib/python3.4/site-packages/pip/commands/__init__.py +88 -0
  1142. package/python3.4.2/lib/python3.4/site-packages/pip/commands/bundle.py +42 -0
  1143. package/python3.4.2/lib/python3.4/site-packages/pip/commands/completion.py +59 -0
  1144. package/python3.4.2/lib/python3.4/site-packages/pip/commands/freeze.py +114 -0
  1145. package/python3.4.2/lib/python3.4/site-packages/pip/commands/help.py +33 -0
  1146. package/python3.4.2/lib/python3.4/site-packages/pip/commands/install.py +314 -0
  1147. package/python3.4.2/lib/python3.4/site-packages/pip/commands/list.py +162 -0
  1148. package/python3.4.2/lib/python3.4/site-packages/pip/commands/search.py +132 -0
  1149. package/python3.4.2/lib/python3.4/site-packages/pip/commands/show.py +80 -0
  1150. package/python3.4.2/lib/python3.4/site-packages/pip/commands/uninstall.py +59 -0
  1151. package/python3.4.2/lib/python3.4/site-packages/pip/commands/unzip.py +7 -0
  1152. package/python3.4.2/lib/python3.4/site-packages/pip/commands/wheel.py +195 -0
  1153. package/python3.4.2/lib/python3.4/site-packages/pip/commands/zip.py +351 -0
  1154. package/python3.4.2/lib/python3.4/site-packages/pip/download.py +644 -0
  1155. package/python3.4.2/lib/python3.4/site-packages/pip/exceptions.py +46 -0
  1156. package/python3.4.2/lib/python3.4/site-packages/pip/index.py +990 -0
  1157. package/python3.4.2/lib/python3.4/site-packages/pip/locations.py +172 -0
  1158. package/python3.4.2/lib/python3.4/site-packages/pip/log.py +276 -0
  1159. package/python3.4.2/lib/python3.4/site-packages/pip/pep425tags.py +102 -0
  1160. package/python3.4.2/lib/python3.4/site-packages/pip/req.py +1931 -0
  1161. package/python3.4.2/lib/python3.4/site-packages/pip/runner.py +18 -0
  1162. package/python3.4.2/lib/python3.4/site-packages/pip/status_codes.py +6 -0
  1163. package/python3.4.2/lib/python3.4/site-packages/pip/util.py +720 -0
  1164. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/__init__.py +251 -0
  1165. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/bazaar.py +131 -0
  1166. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/git.py +194 -0
  1167. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/mercurial.py +151 -0
  1168. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/subversion.py +273 -0
  1169. package/python3.4.2/lib/python3.4/site-packages/pip/wheel.py +560 -0
  1170. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/DESCRIPTION.rst +71 -0
  1171. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/METADATA +98 -0
  1172. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/RECORD +373 -0
  1173. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/WHEEL +6 -0
  1174. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/entry_points.txt +5 -0
  1175. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/metadata.json +1 -0
  1176. package/python3.4.2/lib/python3.4/site-packages/pip-1.5.6.dist-info/top_level.txt +1 -0
  1177. package/python3.4.2/lib/python3.4/site-packages/pkg_resources.py +2719 -0
  1178. package/python3.4.2/lib/python3.4/site-packages/setuptools/__init__.py +98 -0
  1179. package/python3.4.2/lib/python3.4/site-packages/setuptools/archive_util.py +210 -0
  1180. package/python3.4.2/lib/python3.4/site-packages/setuptools/cli-32.exe +0 -0
  1181. package/python3.4.2/lib/python3.4/site-packages/setuptools/cli-64.exe +0 -0
  1182. package/python3.4.2/lib/python3.4/site-packages/setuptools/cli-arm-32.exe +0 -0
  1183. package/python3.4.2/lib/python3.4/site-packages/setuptools/cli.exe +0 -0
  1184. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/__init__.py +17 -0
  1185. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/alias.py +82 -0
  1186. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/bdist_egg.py +553 -0
  1187. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/bdist_rpm.py +82 -0
  1188. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/bdist_wininst.py +82 -0
  1189. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/build_ext.py +298 -0
  1190. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/build_py.py +221 -0
  1191. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/develop.py +167 -0
  1192. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/easy_install.py +1915 -0
  1193. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/egg_info.py +392 -0
  1194. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/install.py +103 -0
  1195. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/install_egg_info.py +125 -0
  1196. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/install_lib.py +82 -0
  1197. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/install_scripts.py +54 -0
  1198. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/launcher manifest.xml +15 -0
  1199. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/register.py +10 -0
  1200. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/rotate.py +83 -0
  1201. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/saveopts.py +24 -0
  1202. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/sdist.py +238 -0
  1203. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/setopt.py +164 -0
  1204. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/test.py +198 -0
  1205. package/python3.4.2/lib/python3.4/site-packages/setuptools/command/upload_docs.py +193 -0
  1206. package/python3.4.2/lib/python3.4/site-packages/setuptools/compat.py +83 -0
  1207. package/python3.4.2/lib/python3.4/site-packages/setuptools/depends.py +246 -0
  1208. package/python3.4.2/lib/python3.4/site-packages/setuptools/dist.py +796 -0
  1209. package/python3.4.2/lib/python3.4/site-packages/setuptools/extension.py +46 -0
  1210. package/python3.4.2/lib/python3.4/site-packages/setuptools/gui-32.exe +0 -0
  1211. package/python3.4.2/lib/python3.4/site-packages/setuptools/gui-64.exe +0 -0
  1212. package/python3.4.2/lib/python3.4/site-packages/setuptools/gui-arm-32.exe +0 -0
  1213. package/python3.4.2/lib/python3.4/site-packages/setuptools/gui.exe +0 -0
  1214. package/python3.4.2/lib/python3.4/site-packages/setuptools/lib2to3_ex.py +58 -0
  1215. package/python3.4.2/lib/python3.4/site-packages/setuptools/package_index.py +1057 -0
  1216. package/python3.4.2/lib/python3.4/site-packages/setuptools/py26compat.py +19 -0
  1217. package/python3.4.2/lib/python3.4/site-packages/setuptools/py27compat.py +15 -0
  1218. package/python3.4.2/lib/python3.4/site-packages/setuptools/py31compat.py +11 -0
  1219. package/python3.4.2/lib/python3.4/site-packages/setuptools/sandbox.py +322 -0
  1220. package/python3.4.2/lib/python3.4/site-packages/setuptools/script template (dev).py +11 -0
  1221. package/python3.4.2/lib/python3.4/site-packages/setuptools/script template.py +4 -0
  1222. package/python3.4.2/lib/python3.4/site-packages/setuptools/site-patch.py +83 -0
  1223. package/python3.4.2/lib/python3.4/site-packages/setuptools/ssl_support.py +234 -0
  1224. package/python3.4.2/lib/python3.4/site-packages/setuptools/svn_utils.py +564 -0
  1225. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/__init__.py +352 -0
  1226. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/doctest.py +2683 -0
  1227. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/environment.py +165 -0
  1228. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/py26compat.py +14 -0
  1229. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/script-with-bom.py +3 -0
  1230. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/server.py +82 -0
  1231. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_bdist_egg.py +69 -0
  1232. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_build_ext.py +20 -0
  1233. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_develop.py +122 -0
  1234. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_dist_info.py +83 -0
  1235. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_easy_install.py +394 -0
  1236. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_egg_info.py +173 -0
  1237. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_markerlib.py +68 -0
  1238. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_packageindex.py +203 -0
  1239. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_resources.py +620 -0
  1240. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_sandbox.py +79 -0
  1241. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_sdist.py +535 -0
  1242. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_svn.py +246 -0
  1243. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_test.py +124 -0
  1244. package/python3.4.2/lib/python3.4/site-packages/setuptools/tests/test_upload_docs.py +72 -0
  1245. package/python3.4.2/lib/python3.4/site-packages/setuptools/version.py +1 -0
  1246. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/DESCRIPTION.rst +1742 -0
  1247. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/METADATA +1772 -0
  1248. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/RECORD +149 -0
  1249. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/WHEEL +6 -0
  1250. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/dependency_links.txt +2 -0
  1251. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/entry_points.txt +62 -0
  1252. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/entry_points.txt.orig +62 -0
  1253. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/pydist.json +1 -0
  1254. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/requires.txt.orig +7 -0
  1255. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/top_level.txt +4 -0
  1256. package/python3.4.2/lib/python3.4/site-packages/setuptools-2.1.dist-info/zip-safe +1 -0
  1257. package/python3.4.2/lib/python3.4/site.py +616 -0
  1258. package/python3.4.2/lib/python3.4/smtpd.py +861 -0
  1259. package/python3.4.2/lib/python3.4/smtplib.py +999 -0
  1260. package/python3.4.2/lib/python3.4/sndhdr.py +240 -0
  1261. package/python3.4.2/lib/python3.4/socket.py +535 -0
  1262. package/python3.4.2/lib/python3.4/socketserver.py +748 -0
  1263. package/python3.4.2/lib/python3.4/sqlite3/__init__.py +23 -0
  1264. package/python3.4.2/lib/python3.4/sqlite3/dbapi2.py +89 -0
  1265. package/python3.4.2/lib/python3.4/sqlite3/dump.py +70 -0
  1266. package/python3.4.2/lib/python3.4/sqlite3/test/__init__.py +0 -0
  1267. package/python3.4.2/lib/python3.4/sqlite3/test/dbapi.py +911 -0
  1268. package/python3.4.2/lib/python3.4/sqlite3/test/dump.py +81 -0
  1269. package/python3.4.2/lib/python3.4/sqlite3/test/factory.py +253 -0
  1270. package/python3.4.2/lib/python3.4/sqlite3/test/hooks.py +258 -0
  1271. package/python3.4.2/lib/python3.4/sqlite3/test/regression.py +358 -0
  1272. package/python3.4.2/lib/python3.4/sqlite3/test/transactions.py +204 -0
  1273. package/python3.4.2/lib/python3.4/sqlite3/test/types.py +403 -0
  1274. package/python3.4.2/lib/python3.4/sqlite3/test/userfunctions.py +468 -0
  1275. package/python3.4.2/lib/python3.4/sre_compile.py +489 -0
  1276. package/python3.4.2/lib/python3.4/sre_constants.py +261 -0
  1277. package/python3.4.2/lib/python3.4/sre_parse.py +859 -0
  1278. package/python3.4.2/lib/python3.4/ssl.py +945 -0
  1279. package/python3.4.2/lib/python3.4/stat.py +155 -0
  1280. package/python3.4.2/lib/python3.4/statistics.py +595 -0
  1281. package/python3.4.2/lib/python3.4/string.py +282 -0
  1282. package/python3.4.2/lib/python3.4/stringprep.py +272 -0
  1283. package/python3.4.2/lib/python3.4/struct.py +15 -0
  1284. package/python3.4.2/lib/python3.4/subprocess.py +1690 -0
  1285. package/python3.4.2/lib/python3.4/sunau.py +525 -0
  1286. package/python3.4.2/lib/python3.4/symbol.py +111 -0
  1287. package/python3.4.2/lib/python3.4/symtable.py +240 -0
  1288. package/python3.4.2/lib/python3.4/sysconfig.py +709 -0
  1289. package/python3.4.2/lib/python3.4/tabnanny.py +332 -0
  1290. package/python3.4.2/lib/python3.4/tarfile.py +2519 -0
  1291. package/python3.4.2/lib/python3.4/telnetlib.py +672 -0
  1292. package/python3.4.2/lib/python3.4/tempfile.py +698 -0
  1293. package/python3.4.2/lib/python3.4/test/185test.db +0 -0
  1294. package/python3.4.2/lib/python3.4/test/Sine-1000Hz-300ms.aif +0 -0
  1295. package/python3.4.2/lib/python3.4/test/__init__.py +1 -0
  1296. package/python3.4.2/lib/python3.4/test/__main__.py +3 -0
  1297. package/python3.4.2/lib/python3.4/test/_test_multiprocessing.py +3841 -0
  1298. package/python3.4.2/lib/python3.4/test/audiodata/pluck-alaw.aifc +0 -0
  1299. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm16.aiff +0 -0
  1300. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm16.au +0 -0
  1301. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm16.wav +0 -0
  1302. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm24.aiff +0 -0
  1303. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm24.au +0 -0
  1304. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm24.wav +0 -0
  1305. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm32.aiff +0 -0
  1306. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm32.au +0 -0
  1307. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm32.wav +0 -0
  1308. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm8.aiff +0 -0
  1309. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm8.au +0 -0
  1310. package/python3.4.2/lib/python3.4/test/audiodata/pluck-pcm8.wav +0 -0
  1311. package/python3.4.2/lib/python3.4/test/audiodata/pluck-ulaw.aifc +0 -0
  1312. package/python3.4.2/lib/python3.4/test/audiodata/pluck-ulaw.au +0 -0
  1313. package/python3.4.2/lib/python3.4/test/audiotest.au +0 -0
  1314. package/python3.4.2/lib/python3.4/test/audiotests.py +329 -0
  1315. package/python3.4.2/lib/python3.4/test/autotest.py +6 -0
  1316. package/python3.4.2/lib/python3.4/test/bad_coding.py +1 -0
  1317. package/python3.4.2/lib/python3.4/test/bad_coding2.py +2 -0
  1318. package/python3.4.2/lib/python3.4/test/badcert.pem +36 -0
  1319. package/python3.4.2/lib/python3.4/test/badkey.pem +40 -0
  1320. package/python3.4.2/lib/python3.4/test/badsyntax_3131.py +2 -0
  1321. package/python3.4.2/lib/python3.4/test/badsyntax_future10.py +3 -0
  1322. package/python3.4.2/lib/python3.4/test/badsyntax_future3.py +10 -0
  1323. package/python3.4.2/lib/python3.4/test/badsyntax_future4.py +10 -0
  1324. package/python3.4.2/lib/python3.4/test/badsyntax_future5.py +12 -0
  1325. package/python3.4.2/lib/python3.4/test/badsyntax_future6.py +10 -0
  1326. package/python3.4.2/lib/python3.4/test/badsyntax_future7.py +11 -0
  1327. package/python3.4.2/lib/python3.4/test/badsyntax_future8.py +10 -0
  1328. package/python3.4.2/lib/python3.4/test/badsyntax_future9.py +10 -0
  1329. package/python3.4.2/lib/python3.4/test/badsyntax_pep3120.py +1 -0
  1330. package/python3.4.2/lib/python3.4/test/buffer_tests.py +218 -0
  1331. package/python3.4.2/lib/python3.4/test/bytecode_helper.py +41 -0
  1332. package/python3.4.2/lib/python3.4/test/capath/4e1295a3.0 +14 -0
  1333. package/python3.4.2/lib/python3.4/test/capath/5ed36f99.0 +41 -0
  1334. package/python3.4.2/lib/python3.4/test/capath/6e88d7b8.0 +14 -0
  1335. package/python3.4.2/lib/python3.4/test/capath/99d0fa06.0 +41 -0
  1336. package/python3.4.2/lib/python3.4/test/cfgparser.1 +2 -0
  1337. package/python3.4.2/lib/python3.4/test/cfgparser.2 +537 -0
  1338. package/python3.4.2/lib/python3.4/test/cfgparser.3 +69 -0
  1339. package/python3.4.2/lib/python3.4/test/check_soundcard.vbs +13 -0
  1340. package/python3.4.2/lib/python3.4/test/cjkencodings/big5-utf8.txt +9 -0
  1341. package/python3.4.2/lib/python3.4/test/cjkencodings/big5.txt +9 -0
  1342. package/python3.4.2/lib/python3.4/test/cjkencodings/big5hkscs-utf8.txt +2 -0
  1343. package/python3.4.2/lib/python3.4/test/cjkencodings/big5hkscs.txt +2 -0
  1344. package/python3.4.2/lib/python3.4/test/cjkencodings/cp949-utf8.txt +9 -0
  1345. package/python3.4.2/lib/python3.4/test/cjkencodings/cp949.txt +9 -0
  1346. package/python3.4.2/lib/python3.4/test/cjkencodings/euc_jisx0213-utf8.txt +8 -0
  1347. package/python3.4.2/lib/python3.4/test/cjkencodings/euc_jisx0213.txt +8 -0
  1348. package/python3.4.2/lib/python3.4/test/cjkencodings/euc_jp-utf8.txt +7 -0
  1349. package/python3.4.2/lib/python3.4/test/cjkencodings/euc_jp.txt +7 -0
  1350. package/python3.4.2/lib/python3.4/test/cjkencodings/euc_kr-utf8.txt +7 -0
  1351. package/python3.4.2/lib/python3.4/test/cjkencodings/euc_kr.txt +7 -0
  1352. package/python3.4.2/lib/python3.4/test/cjkencodings/gb18030-utf8.txt +15 -0
  1353. package/python3.4.2/lib/python3.4/test/cjkencodings/gb18030.txt +15 -0
  1354. package/python3.4.2/lib/python3.4/test/cjkencodings/gb2312-utf8.txt +6 -0
  1355. package/python3.4.2/lib/python3.4/test/cjkencodings/gb2312.txt +6 -0
  1356. package/python3.4.2/lib/python3.4/test/cjkencodings/gbk-utf8.txt +14 -0
  1357. package/python3.4.2/lib/python3.4/test/cjkencodings/gbk.txt +14 -0
  1358. package/python3.4.2/lib/python3.4/test/cjkencodings/hz-utf8.txt +2 -0
  1359. package/python3.4.2/lib/python3.4/test/cjkencodings/hz.txt +2 -0
  1360. package/python3.4.2/lib/python3.4/test/cjkencodings/iso2022_jp-utf8.txt +7 -0
  1361. package/python3.4.2/lib/python3.4/test/cjkencodings/iso2022_jp.txt +7 -0
  1362. package/python3.4.2/lib/python3.4/test/cjkencodings/iso2022_kr-utf8.txt +7 -0
  1363. package/python3.4.2/lib/python3.4/test/cjkencodings/iso2022_kr.txt +7 -0
  1364. package/python3.4.2/lib/python3.4/test/cjkencodings/johab-utf8.txt +9 -0
  1365. package/python3.4.2/lib/python3.4/test/cjkencodings/johab.txt +9 -0
  1366. package/python3.4.2/lib/python3.4/test/cjkencodings/shift_jis-utf8.txt +7 -0
  1367. package/python3.4.2/lib/python3.4/test/cjkencodings/shift_jis.txt +7 -0
  1368. package/python3.4.2/lib/python3.4/test/cjkencodings/shift_jisx0213-utf8.txt +8 -0
  1369. package/python3.4.2/lib/python3.4/test/cjkencodings/shift_jisx0213.txt +8 -0
  1370. package/python3.4.2/lib/python3.4/test/cmath_testcases.txt +2370 -0
  1371. package/python3.4.2/lib/python3.4/test/coding20731.py +4 -0
  1372. package/python3.4.2/lib/python3.4/test/curses_tests.py +46 -0
  1373. package/python3.4.2/lib/python3.4/test/data/README +2 -0
  1374. package/python3.4.2/lib/python3.4/test/datetimetester.py +3786 -0
  1375. package/python3.4.2/lib/python3.4/test/decimaltestdata/abs.decTest +161 -0
  1376. package/python3.4.2/lib/python3.4/test/decimaltestdata/add.decTest +2716 -0
  1377. package/python3.4.2/lib/python3.4/test/decimaltestdata/and.decTest +338 -0
  1378. package/python3.4.2/lib/python3.4/test/decimaltestdata/base.decTest +1411 -0
  1379. package/python3.4.2/lib/python3.4/test/decimaltestdata/clamp.decTest +211 -0
  1380. package/python3.4.2/lib/python3.4/test/decimaltestdata/class.decTest +131 -0
  1381. package/python3.4.2/lib/python3.4/test/decimaltestdata/compare.decTest +758 -0
  1382. package/python3.4.2/lib/python3.4/test/decimaltestdata/comparetotal.decTest +798 -0
  1383. package/python3.4.2/lib/python3.4/test/decimaltestdata/comparetotmag.decTest +790 -0
  1384. package/python3.4.2/lib/python3.4/test/decimaltestdata/copy.decTest +86 -0
  1385. package/python3.4.2/lib/python3.4/test/decimaltestdata/copyabs.decTest +86 -0
  1386. package/python3.4.2/lib/python3.4/test/decimaltestdata/copynegate.decTest +86 -0
  1387. package/python3.4.2/lib/python3.4/test/decimaltestdata/copysign.decTest +177 -0
  1388. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddAbs.decTest +126 -0
  1389. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddAdd.decTest +1328 -0
  1390. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddAnd.decTest +347 -0
  1391. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddBase.decTest +1104 -0
  1392. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCanonical.decTest +357 -0
  1393. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddClass.decTest +76 -0
  1394. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCompare.decTest +744 -0
  1395. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCompareSig.decTest +647 -0
  1396. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCompareTotal.decTest +706 -0
  1397. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCompareTotalMag.decTest +706 -0
  1398. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCopy.decTest +88 -0
  1399. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCopyAbs.decTest +88 -0
  1400. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCopyNegate.decTest +88 -0
  1401. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddCopySign.decTest +175 -0
  1402. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddDivide.decTest +863 -0
  1403. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddDivideInt.decTest +449 -0
  1404. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddEncode.decTest +495 -0
  1405. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddFMA.decTest +1698 -0
  1406. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddInvert.decTest +202 -0
  1407. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddLogB.decTest +159 -0
  1408. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddMax.decTest +322 -0
  1409. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddMaxMag.decTest +304 -0
  1410. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddMin.decTest +309 -0
  1411. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddMinMag.decTest +293 -0
  1412. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddMinus.decTest +88 -0
  1413. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddMultiply.decTest +553 -0
  1414. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddNextMinus.decTest +126 -0
  1415. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddNextPlus.decTest +124 -0
  1416. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddNextToward.decTest +374 -0
  1417. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddOr.decTest +292 -0
  1418. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddPlus.decTest +88 -0
  1419. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddQuantize.decTest +833 -0
  1420. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddReduce.decTest +182 -0
  1421. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddRemainder.decTest +600 -0
  1422. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddRemainderNear.decTest +629 -0
  1423. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddRotate.decTest +262 -0
  1424. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddSameQuantum.decTest +389 -0
  1425. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddScaleB.decTest +243 -0
  1426. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddShift.decTest +262 -0
  1427. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddSubtract.decTest +629 -0
  1428. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddToIntegral.decTest +257 -0
  1429. package/python3.4.2/lib/python3.4/test/decimaltestdata/ddXor.decTest +337 -0
  1430. package/python3.4.2/lib/python3.4/test/decimaltestdata/decDouble.decTest +65 -0
  1431. package/python3.4.2/lib/python3.4/test/decimaltestdata/decQuad.decTest +65 -0
  1432. package/python3.4.2/lib/python3.4/test/decimaltestdata/decSingle.decTest +25 -0
  1433. package/python3.4.2/lib/python3.4/test/decimaltestdata/divide.decTest +854 -0
  1434. package/python3.4.2/lib/python3.4/test/decimaltestdata/divideint.decTest +486 -0
  1435. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqAbs.decTest +126 -0
  1436. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqAdd.decTest +1215 -0
  1437. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqAnd.decTest +420 -0
  1438. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqBase.decTest +1081 -0
  1439. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCanonical.decTest +372 -0
  1440. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqClass.decTest +77 -0
  1441. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCompare.decTest +753 -0
  1442. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCompareSig.decTest +647 -0
  1443. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCompareTotal.decTest +706 -0
  1444. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCompareTotalMag.decTest +706 -0
  1445. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCopy.decTest +88 -0
  1446. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCopyAbs.decTest +88 -0
  1447. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCopyNegate.decTest +88 -0
  1448. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqCopySign.decTest +175 -0
  1449. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqDivide.decTest +808 -0
  1450. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqDivideInt.decTest +453 -0
  1451. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqEncode.decTest +477 -0
  1452. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqFMA.decTest +1786 -0
  1453. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqInvert.decTest +245 -0
  1454. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqLogB.decTest +160 -0
  1455. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqMax.decTest +322 -0
  1456. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqMaxMag.decTest +304 -0
  1457. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqMin.decTest +309 -0
  1458. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqMinMag.decTest +293 -0
  1459. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqMinus.decTest +88 -0
  1460. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqMultiply.decTest +589 -0
  1461. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqNextMinus.decTest +126 -0
  1462. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqNextPlus.decTest +124 -0
  1463. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqNextToward.decTest +375 -0
  1464. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqOr.decTest +401 -0
  1465. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqPlus.decTest +88 -0
  1466. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqQuantize.decTest +836 -0
  1467. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqReduce.decTest +183 -0
  1468. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqRemainder.decTest +597 -0
  1469. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqRemainderNear.decTest +631 -0
  1470. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqRotate.decTest +298 -0
  1471. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqSameQuantum.decTest +389 -0
  1472. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqScaleB.decTest +260 -0
  1473. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqShift.decTest +298 -0
  1474. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqSubtract.decTest +635 -0
  1475. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqToIntegral.decTest +257 -0
  1476. package/python3.4.2/lib/python3.4/test/decimaltestdata/dqXor.decTest +410 -0
  1477. package/python3.4.2/lib/python3.4/test/decimaltestdata/dsBase.decTest +1062 -0
  1478. package/python3.4.2/lib/python3.4/test/decimaltestdata/dsEncode.decTest +372 -0
  1479. package/python3.4.2/lib/python3.4/test/decimaltestdata/exp.decTest +674 -0
  1480. package/python3.4.2/lib/python3.4/test/decimaltestdata/extra.decTest +2830 -0
  1481. package/python3.4.2/lib/python3.4/test/decimaltestdata/fma.decTest +3426 -0
  1482. package/python3.4.2/lib/python3.4/test/decimaltestdata/inexact.decTest +215 -0
  1483. package/python3.4.2/lib/python3.4/test/decimaltestdata/invert.decTest +176 -0
  1484. package/python3.4.2/lib/python3.4/test/decimaltestdata/ln.decTest +611 -0
  1485. package/python3.4.2/lib/python3.4/test/decimaltestdata/log10.decTest +551 -0
  1486. package/python3.4.2/lib/python3.4/test/decimaltestdata/logb.decTest +188 -0
  1487. package/python3.4.2/lib/python3.4/test/decimaltestdata/max.decTest +424 -0
  1488. package/python3.4.2/lib/python3.4/test/decimaltestdata/maxmag.decTest +404 -0
  1489. package/python3.4.2/lib/python3.4/test/decimaltestdata/min.decTest +407 -0
  1490. package/python3.4.2/lib/python3.4/test/decimaltestdata/minmag.decTest +390 -0
  1491. package/python3.4.2/lib/python3.4/test/decimaltestdata/minus.decTest +182 -0
  1492. package/python3.4.2/lib/python3.4/test/decimaltestdata/multiply.decTest +731 -0
  1493. package/python3.4.2/lib/python3.4/test/decimaltestdata/nextminus.decTest +148 -0
  1494. package/python3.4.2/lib/python3.4/test/decimaltestdata/nextplus.decTest +150 -0
  1495. package/python3.4.2/lib/python3.4/test/decimaltestdata/nexttoward.decTest +426 -0
  1496. package/python3.4.2/lib/python3.4/test/decimaltestdata/or.decTest +334 -0
  1497. package/python3.4.2/lib/python3.4/test/decimaltestdata/plus.decTest +195 -0
  1498. package/python3.4.2/lib/python3.4/test/decimaltestdata/power.decTest +1624 -0
  1499. package/python3.4.2/lib/python3.4/test/decimaltestdata/powersqrt.decTest +2970 -0
  1500. package/python3.4.2/lib/python3.4/test/decimaltestdata/quantize.decTest +948 -0
  1501. package/python3.4.2/lib/python3.4/test/decimaltestdata/randomBound32.decTest +2443 -0
  1502. package/python3.4.2/lib/python3.4/test/decimaltestdata/randoms.decTest +4030 -0
  1503. package/python3.4.2/lib/python3.4/test/decimaltestdata/reduce.decTest +234 -0
  1504. package/python3.4.2/lib/python3.4/test/decimaltestdata/remainder.decTest +640 -0
  1505. package/python3.4.2/lib/python3.4/test/decimaltestdata/remainderNear.decTest +572 -0
  1506. package/python3.4.2/lib/python3.4/test/decimaltestdata/rescale.decTest +764 -0
  1507. package/python3.4.2/lib/python3.4/test/decimaltestdata/rotate.decTest +247 -0
  1508. package/python3.4.2/lib/python3.4/test/decimaltestdata/rounding.decTest +1303 -0
  1509. package/python3.4.2/lib/python3.4/test/decimaltestdata/samequantum.decTest +389 -0
  1510. package/python3.4.2/lib/python3.4/test/decimaltestdata/scaleb.decTest +209 -0
  1511. package/python3.4.2/lib/python3.4/test/decimaltestdata/shift.decTest +250 -0
  1512. package/python3.4.2/lib/python3.4/test/decimaltestdata/squareroot.decTest +3834 -0
  1513. package/python3.4.2/lib/python3.4/test/decimaltestdata/subtract.decTest +873 -0
  1514. package/python3.4.2/lib/python3.4/test/decimaltestdata/testall.decTest +87 -0
  1515. package/python3.4.2/lib/python3.4/test/decimaltestdata/tointegral.decTest +241 -0
  1516. package/python3.4.2/lib/python3.4/test/decimaltestdata/tointegralx.decTest +255 -0
  1517. package/python3.4.2/lib/python3.4/test/decimaltestdata/xor.decTest +335 -0
  1518. package/python3.4.2/lib/python3.4/test/dh512.pem +9 -0
  1519. package/python3.4.2/lib/python3.4/test/dis_module.py +5 -0
  1520. package/python3.4.2/lib/python3.4/test/doctest_aliases.py +13 -0
  1521. package/python3.4.2/lib/python3.4/test/double_const.py +30 -0
  1522. package/python3.4.2/lib/python3.4/test/empty.vbs +1 -0
  1523. package/python3.4.2/lib/python3.4/test/encoded_modules/__init__.py +23 -0
  1524. package/python3.4.2/lib/python3.4/test/encoded_modules/module_iso_8859_1.py +5 -0
  1525. package/python3.4.2/lib/python3.4/test/encoded_modules/module_koi8_r.py +3 -0
  1526. package/python3.4.2/lib/python3.4/test/exception_hierarchy.txt +61 -0
  1527. package/python3.4.2/lib/python3.4/test/final_a.py +19 -0
  1528. package/python3.4.2/lib/python3.4/test/final_b.py +19 -0
  1529. package/python3.4.2/lib/python3.4/test/floating_points.txt +1028 -0
  1530. package/python3.4.2/lib/python3.4/test/fork_wait.py +77 -0
  1531. package/python3.4.2/lib/python3.4/test/formatfloat_testcases.txt +355 -0
  1532. package/python3.4.2/lib/python3.4/test/future_test1.py +11 -0
  1533. package/python3.4.2/lib/python3.4/test/future_test2.py +10 -0
  1534. package/python3.4.2/lib/python3.4/test/gdb_sample.py +12 -0
  1535. package/python3.4.2/lib/python3.4/test/https_svn_python_org_root.pem +41 -0
  1536. package/python3.4.2/lib/python3.4/test/ieee754.txt +185 -0
  1537. package/python3.4.2/lib/python3.4/test/imghdrdata/python.bmp +0 -0
  1538. package/python3.4.2/lib/python3.4/test/imghdrdata/python.gif +0 -0
  1539. package/python3.4.2/lib/python3.4/test/imghdrdata/python.jpg +0 -0
  1540. package/python3.4.2/lib/python3.4/test/imghdrdata/python.pbm +3 -0
  1541. package/python3.4.2/lib/python3.4/test/imghdrdata/python.pgm +0 -0
  1542. package/python3.4.2/lib/python3.4/test/imghdrdata/python.png +0 -0
  1543. package/python3.4.2/lib/python3.4/test/imghdrdata/python.ppm +0 -0
  1544. package/python3.4.2/lib/python3.4/test/imghdrdata/python.ras +0 -0
  1545. package/python3.4.2/lib/python3.4/test/imghdrdata/python.sgi +0 -0
  1546. package/python3.4.2/lib/python3.4/test/imghdrdata/python.tiff +0 -0
  1547. package/python3.4.2/lib/python3.4/test/imghdrdata/python.xbm +6 -0
  1548. package/python3.4.2/lib/python3.4/test/inspect_fodder.py +58 -0
  1549. package/python3.4.2/lib/python3.4/test/inspect_fodder2.py +111 -0
  1550. package/python3.4.2/lib/python3.4/test/keycert.passwd.pem +33 -0
  1551. package/python3.4.2/lib/python3.4/test/keycert.pem +31 -0
  1552. package/python3.4.2/lib/python3.4/test/keycert2.pem +31 -0
  1553. package/python3.4.2/lib/python3.4/test/keycert3.pem +73 -0
  1554. package/python3.4.2/lib/python3.4/test/keycert4.pem +73 -0
  1555. package/python3.4.2/lib/python3.4/test/list_tests.py +585 -0
  1556. package/python3.4.2/lib/python3.4/test/lock_tests.py +896 -0
  1557. package/python3.4.2/lib/python3.4/test/mailcap.txt +39 -0
  1558. package/python3.4.2/lib/python3.4/test/make_ssl_certs.py +176 -0
  1559. package/python3.4.2/lib/python3.4/test/mapping_tests.py +657 -0
  1560. package/python3.4.2/lib/python3.4/test/math_testcases.txt +633 -0
  1561. package/python3.4.2/lib/python3.4/test/memory_watchdog.py +28 -0
  1562. package/python3.4.2/lib/python3.4/test/mime.types +1445 -0
  1563. package/python3.4.2/lib/python3.4/test/mock_socket.py +156 -0
  1564. package/python3.4.2/lib/python3.4/test/mp_fork_bomb.py +18 -0
  1565. package/python3.4.2/lib/python3.4/test/multibytecodec_support.py +377 -0
  1566. package/python3.4.2/lib/python3.4/test/nokia.pem +31 -0
  1567. package/python3.4.2/lib/python3.4/test/nullbytecert.pem +90 -0
  1568. package/python3.4.2/lib/python3.4/test/nullcert.pem +0 -0
  1569. package/python3.4.2/lib/python3.4/test/outstanding_bugs.py +18 -0
  1570. package/python3.4.2/lib/python3.4/test/pickletester.py +2253 -0
  1571. package/python3.4.2/lib/python3.4/test/profilee.py +115 -0
  1572. package/python3.4.2/lib/python3.4/test/pstats.pck +0 -0
  1573. package/python3.4.2/lib/python3.4/test/pycacert.pem +78 -0
  1574. package/python3.4.2/lib/python3.4/test/pycakey.pem +28 -0
  1575. package/python3.4.2/lib/python3.4/test/pyclbr_input.py +33 -0
  1576. package/python3.4.2/lib/python3.4/test/pydoc_mod.py +37 -0
  1577. package/python3.4.2/lib/python3.4/test/pydocfodder.py +216 -0
  1578. package/python3.4.2/lib/python3.4/test/pystone.py +277 -0
  1579. package/python3.4.2/lib/python3.4/test/randv2_32.pck +633 -0
  1580. package/python3.4.2/lib/python3.4/test/randv2_64.pck +633 -0
  1581. package/python3.4.2/lib/python3.4/test/randv3.pck +633 -0
  1582. package/python3.4.2/lib/python3.4/test/re_tests.py +670 -0
  1583. package/python3.4.2/lib/python3.4/test/regrtest.py +1589 -0
  1584. package/python3.4.2/lib/python3.4/test/relimport.py +1 -0
  1585. package/python3.4.2/lib/python3.4/test/reperf.py +23 -0
  1586. package/python3.4.2/lib/python3.4/test/revocation.crl +11 -0
  1587. package/python3.4.2/lib/python3.4/test/sample_doctest.py +76 -0
  1588. package/python3.4.2/lib/python3.4/test/sample_doctest_no_docstrings.py +12 -0
  1589. package/python3.4.2/lib/python3.4/test/sample_doctest_no_doctests.py +15 -0
  1590. package/python3.4.2/lib/python3.4/test/script_helper.py +178 -0
  1591. package/python3.4.2/lib/python3.4/test/seq_tests.py +397 -0
  1592. package/python3.4.2/lib/python3.4/test/sgml_input.html +212 -0
  1593. package/python3.4.2/lib/python3.4/test/sha256.pem +128 -0
  1594. package/python3.4.2/lib/python3.4/test/sndhdrdata/README +12 -0
  1595. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.8svx +0 -0
  1596. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.aifc +0 -0
  1597. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.aiff +0 -0
  1598. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.au +0 -0
  1599. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.hcom +0 -0
  1600. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.sndt +0 -0
  1601. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.voc +0 -0
  1602. package/python3.4.2/lib/python3.4/test/sndhdrdata/sndhdr.wav +0 -0
  1603. package/python3.4.2/lib/python3.4/test/sortperf.py +169 -0
  1604. package/python3.4.2/lib/python3.4/test/ssl_cert.pem +15 -0
  1605. package/python3.4.2/lib/python3.4/test/ssl_key.passwd.pem +18 -0
  1606. package/python3.4.2/lib/python3.4/test/ssl_key.pem +16 -0
  1607. package/python3.4.2/lib/python3.4/test/ssl_servers.py +205 -0
  1608. package/python3.4.2/lib/python3.4/test/ssltests.py +22 -0
  1609. package/python3.4.2/lib/python3.4/test/string_tests.py +1385 -0
  1610. package/python3.4.2/lib/python3.4/test/subprocessdata/fd_status.py +34 -0
  1611. package/python3.4.2/lib/python3.4/test/subprocessdata/input_reader.py +7 -0
  1612. package/python3.4.2/lib/python3.4/test/subprocessdata/qcat.py +7 -0
  1613. package/python3.4.2/lib/python3.4/test/subprocessdata/qgrep.py +10 -0
  1614. package/python3.4.2/lib/python3.4/test/subprocessdata/sigchild_ignore.py +15 -0
  1615. package/python3.4.2/lib/python3.4/test/support/__init__.py +2241 -0
  1616. package/python3.4.2/lib/python3.4/test/test___all__.py +117 -0
  1617. package/python3.4.2/lib/python3.4/test/test___future__.py +65 -0
  1618. package/python3.4.2/lib/python3.4/test/test__locale.py +170 -0
  1619. package/python3.4.2/lib/python3.4/test/test__opcode.py +23 -0
  1620. package/python3.4.2/lib/python3.4/test/test__osx_support.py +281 -0
  1621. package/python3.4.2/lib/python3.4/test/test_abc.py +408 -0
  1622. package/python3.4.2/lib/python3.4/test/test_abstract_numbers.py +44 -0
  1623. package/python3.4.2/lib/python3.4/test/test_aifc.py +384 -0
  1624. package/python3.4.2/lib/python3.4/test/test_argparse.py +4979 -0
  1625. package/python3.4.2/lib/python3.4/test/test_array.py +1323 -0
  1626. package/python3.4.2/lib/python3.4/test/test_ast.py +1038 -0
  1627. package/python3.4.2/lib/python3.4/test/test_asynchat.py +333 -0
  1628. package/python3.4.2/lib/python3.4/test/test_asyncio/__init__.py +10 -0
  1629. package/python3.4.2/lib/python3.4/test/test_asyncio/__main__.py +4 -0
  1630. package/python3.4.2/lib/python3.4/test/test_asyncio/echo.py +8 -0
  1631. package/python3.4.2/lib/python3.4/test/test_asyncio/echo2.py +6 -0
  1632. package/python3.4.2/lib/python3.4/test/test_asyncio/echo3.py +11 -0
  1633. package/python3.4.2/lib/python3.4/test/test_asyncio/keycert3.pem +73 -0
  1634. package/python3.4.2/lib/python3.4/test/test_asyncio/pycacert.pem +78 -0
  1635. package/python3.4.2/lib/python3.4/test/test_asyncio/ssl_cert.pem +15 -0
  1636. package/python3.4.2/lib/python3.4/test/test_asyncio/ssl_key.pem +16 -0
  1637. package/python3.4.2/lib/python3.4/test/test_asyncio/test_base_events.py +1064 -0
  1638. package/python3.4.2/lib/python3.4/test/test_asyncio/test_events.py +2240 -0
  1639. package/python3.4.2/lib/python3.4/test/test_asyncio/test_futures.py +442 -0
  1640. package/python3.4.2/lib/python3.4/test/test_asyncio/test_locks.py +858 -0
  1641. package/python3.4.2/lib/python3.4/test/test_asyncio/test_proactor_events.py +492 -0
  1642. package/python3.4.2/lib/python3.4/test/test_asyncio/test_queues.py +476 -0
  1643. package/python3.4.2/lib/python3.4/test/test_asyncio/test_selector_events.py +1737 -0
  1644. package/python3.4.2/lib/python3.4/test/test_asyncio/test_streams.py +628 -0
  1645. package/python3.4.2/lib/python3.4/test/test_asyncio/test_subprocess.py +217 -0
  1646. package/python3.4.2/lib/python3.4/test/test_asyncio/test_tasks.py +1977 -0
  1647. package/python3.4.2/lib/python3.4/test/test_asyncio/test_transports.py +90 -0
  1648. package/python3.4.2/lib/python3.4/test/test_asyncio/test_unix_events.py +1582 -0
  1649. package/python3.4.2/lib/python3.4/test/test_asyncio/test_windows_events.py +141 -0
  1650. package/python3.4.2/lib/python3.4/test/test_asyncio/test_windows_utils.py +171 -0
  1651. package/python3.4.2/lib/python3.4/test/test_asyncore.py +859 -0
  1652. package/python3.4.2/lib/python3.4/test/test_atexit.py +185 -0
  1653. package/python3.4.2/lib/python3.4/test/test_audioop.py +534 -0
  1654. package/python3.4.2/lib/python3.4/test/test_augassign.py +315 -0
  1655. package/python3.4.2/lib/python3.4/test/test_base64.py +666 -0
  1656. package/python3.4.2/lib/python3.4/test/test_bigaddrspace.py +101 -0
  1657. package/python3.4.2/lib/python3.4/test/test_bigmem.py +1257 -0
  1658. package/python3.4.2/lib/python3.4/test/test_binascii.py +270 -0
  1659. package/python3.4.2/lib/python3.4/test/test_binhex.py +56 -0
  1660. package/python3.4.2/lib/python3.4/test/test_binop.py +380 -0
  1661. package/python3.4.2/lib/python3.4/test/test_bisect.py +328 -0
  1662. package/python3.4.2/lib/python3.4/test/test_bool.py +347 -0
  1663. package/python3.4.2/lib/python3.4/test/test_buffer.py +4294 -0
  1664. package/python3.4.2/lib/python3.4/test/test_bufio.py +73 -0
  1665. package/python3.4.2/lib/python3.4/test/test_builtin.py +1637 -0
  1666. package/python3.4.2/lib/python3.4/test/test_bytes.py +1433 -0
  1667. package/python3.4.2/lib/python3.4/test/test_bz2.py +880 -0
  1668. package/python3.4.2/lib/python3.4/test/test_calendar.py +714 -0
  1669. package/python3.4.2/lib/python3.4/test/test_call.py +131 -0
  1670. package/python3.4.2/lib/python3.4/test/test_capi.py +469 -0
  1671. package/python3.4.2/lib/python3.4/test/test_cgi.py +489 -0
  1672. package/python3.4.2/lib/python3.4/test/test_cgitb.py +70 -0
  1673. package/python3.4.2/lib/python3.4/test/test_charmapcodec.py +56 -0
  1674. package/python3.4.2/lib/python3.4/test/test_class.py +552 -0
  1675. package/python3.4.2/lib/python3.4/test/test_cmath.py +536 -0
  1676. package/python3.4.2/lib/python3.4/test/test_cmd.py +243 -0
  1677. package/python3.4.2/lib/python3.4/test/test_cmd_line.py +473 -0
  1678. package/python3.4.2/lib/python3.4/test/test_cmd_line_script.py +481 -0
  1679. package/python3.4.2/lib/python3.4/test/test_code.py +170 -0
  1680. package/python3.4.2/lib/python3.4/test/test_code_module.py +86 -0
  1681. package/python3.4.2/lib/python3.4/test/test_codeccallbacks.py +880 -0
  1682. package/python3.4.2/lib/python3.4/test/test_codecencodings_cn.py +90 -0
  1683. package/python3.4.2/lib/python3.4/test/test_codecencodings_hk.py +26 -0
  1684. package/python3.4.2/lib/python3.4/test/test_codecencodings_iso2022.py +45 -0
  1685. package/python3.4.2/lib/python3.4/test/test_codecencodings_jp.py +130 -0
  1686. package/python3.4.2/lib/python3.4/test/test_codecencodings_kr.py +73 -0
  1687. package/python3.4.2/lib/python3.4/test/test_codecencodings_tw.py +26 -0
  1688. package/python3.4.2/lib/python3.4/test/test_codecmaps_cn.py +29 -0
  1689. package/python3.4.2/lib/python3.4/test/test_codecmaps_hk.py +16 -0
  1690. package/python3.4.2/lib/python3.4/test/test_codecmaps_jp.py +63 -0
  1691. package/python3.4.2/lib/python3.4/test/test_codecmaps_kr.py +40 -0
  1692. package/python3.4.2/lib/python3.4/test/test_codecmaps_tw.py +30 -0
  1693. package/python3.4.2/lib/python3.4/test/test_codecs.py +2901 -0
  1694. package/python3.4.2/lib/python3.4/test/test_codeop.py +304 -0
  1695. package/python3.4.2/lib/python3.4/test/test_collections.py +1552 -0
  1696. package/python3.4.2/lib/python3.4/test/test_colorsys.py +100 -0
  1697. package/python3.4.2/lib/python3.4/test/test_compare.py +67 -0
  1698. package/python3.4.2/lib/python3.4/test/test_compile.py +561 -0
  1699. package/python3.4.2/lib/python3.4/test/test_compileall.py +384 -0
  1700. package/python3.4.2/lib/python3.4/test/test_complex.py +638 -0
  1701. package/python3.4.2/lib/python3.4/test/test_concurrent_futures.py +685 -0
  1702. package/python3.4.2/lib/python3.4/test/test_configparser.py +1768 -0
  1703. package/python3.4.2/lib/python3.4/test/test_contains.py +93 -0
  1704. package/python3.4.2/lib/python3.4/test/test_contextlib.py +828 -0
  1705. package/python3.4.2/lib/python3.4/test/test_copy.py +759 -0
  1706. package/python3.4.2/lib/python3.4/test/test_copyreg.py +121 -0
  1707. package/python3.4.2/lib/python3.4/test/test_cprofile.py +98 -0
  1708. package/python3.4.2/lib/python3.4/test/test_crashers.py +38 -0
  1709. package/python3.4.2/lib/python3.4/test/test_crypt.py +33 -0
  1710. package/python3.4.2/lib/python3.4/test/test_csv.py +1074 -0
  1711. package/python3.4.2/lib/python3.4/test/test_ctypes.py +6 -0
  1712. package/python3.4.2/lib/python3.4/test/test_curses.py +395 -0
  1713. package/python3.4.2/lib/python3.4/test/test_datetime.py +48 -0
  1714. package/python3.4.2/lib/python3.4/test/test_dbm.py +193 -0
  1715. package/python3.4.2/lib/python3.4/test/test_dbm_dumb.py +228 -0
  1716. package/python3.4.2/lib/python3.4/test/test_dbm_gnu.py +97 -0
  1717. package/python3.4.2/lib/python3.4/test/test_dbm_ndbm.py +54 -0
  1718. package/python3.4.2/lib/python3.4/test/test_decimal.py +5504 -0
  1719. package/python3.4.2/lib/python3.4/test/test_decorators.py +309 -0
  1720. package/python3.4.2/lib/python3.4/test/test_defaultdict.py +190 -0
  1721. package/python3.4.2/lib/python3.4/test/test_deque.py +817 -0
  1722. package/python3.4.2/lib/python3.4/test/test_descr.py +5006 -0
  1723. package/python3.4.2/lib/python3.4/test/test_descrtut.py +485 -0
  1724. package/python3.4.2/lib/python3.4/test/test_devpoll.py +146 -0
  1725. package/python3.4.2/lib/python3.4/test/test_dict.py +928 -0
  1726. package/python3.4.2/lib/python3.4/test/test_dictcomps.py +88 -0
  1727. package/python3.4.2/lib/python3.4/test/test_dictviews.py +206 -0
  1728. package/python3.4.2/lib/python3.4/test/test_difflib.py +298 -0
  1729. package/python3.4.2/lib/python3.4/test/test_difflib_expect.html +526 -0
  1730. package/python3.4.2/lib/python3.4/test/test_dis.py +832 -0
  1731. package/python3.4.2/lib/python3.4/test/test_distutils.py +18 -0
  1732. package/python3.4.2/lib/python3.4/test/test_doctest.py +2921 -0
  1733. package/python3.4.2/lib/python3.4/test/test_doctest.txt +17 -0
  1734. package/python3.4.2/lib/python3.4/test/test_doctest2.py +123 -0
  1735. package/python3.4.2/lib/python3.4/test/test_doctest2.txt +14 -0
  1736. package/python3.4.2/lib/python3.4/test/test_doctest3.txt +5 -0
  1737. package/python3.4.2/lib/python3.4/test/test_doctest4.txt +11 -0
  1738. package/python3.4.2/lib/python3.4/test/test_docxmlrpc.py +219 -0
  1739. package/python3.4.2/lib/python3.4/test/test_dummy_thread.py +182 -0
  1740. package/python3.4.2/lib/python3.4/test/test_dummy_threading.py +64 -0
  1741. package/python3.4.2/lib/python3.4/test/test_dynamic.py +143 -0
  1742. package/python3.4.2/lib/python3.4/test/test_dynamicclassattribute.py +304 -0
  1743. package/python3.4.2/lib/python3.4/test/test_email/__init__.py +159 -0
  1744. package/python3.4.2/lib/python3.4/test/test_email/__main__.py +4 -0
  1745. package/python3.4.2/lib/python3.4/test/test_email/data/PyBanner048.gif +0 -0
  1746. package/python3.4.2/lib/python3.4/test/test_email/data/audiotest.au +0 -0
  1747. package/python3.4.2/lib/python3.4/test/test_email/data/msg_01.txt +19 -0
  1748. package/python3.4.2/lib/python3.4/test/test_email/data/msg_02.txt +136 -0
  1749. package/python3.4.2/lib/python3.4/test/test_email/data/msg_03.txt +16 -0
  1750. package/python3.4.2/lib/python3.4/test/test_email/data/msg_04.txt +37 -0
  1751. package/python3.4.2/lib/python3.4/test/test_email/data/msg_05.txt +28 -0
  1752. package/python3.4.2/lib/python3.4/test/test_email/data/msg_06.txt +33 -0
  1753. package/python3.4.2/lib/python3.4/test/test_email/data/msg_07.txt +83 -0
  1754. package/python3.4.2/lib/python3.4/test/test_email/data/msg_08.txt +24 -0
  1755. package/python3.4.2/lib/python3.4/test/test_email/data/msg_09.txt +24 -0
  1756. package/python3.4.2/lib/python3.4/test/test_email/data/msg_10.txt +39 -0
  1757. package/python3.4.2/lib/python3.4/test/test_email/data/msg_11.txt +7 -0
  1758. package/python3.4.2/lib/python3.4/test/test_email/data/msg_12.txt +36 -0
  1759. package/python3.4.2/lib/python3.4/test/test_email/data/msg_12a.txt +38 -0
  1760. package/python3.4.2/lib/python3.4/test/test_email/data/msg_13.txt +94 -0
  1761. package/python3.4.2/lib/python3.4/test/test_email/data/msg_14.txt +23 -0
  1762. package/python3.4.2/lib/python3.4/test/test_email/data/msg_15.txt +52 -0
  1763. package/python3.4.2/lib/python3.4/test/test_email/data/msg_16.txt +123 -0
  1764. package/python3.4.2/lib/python3.4/test/test_email/data/msg_17.txt +12 -0
  1765. package/python3.4.2/lib/python3.4/test/test_email/data/msg_18.txt +6 -0
  1766. package/python3.4.2/lib/python3.4/test/test_email/data/msg_19.txt +43 -0
  1767. package/python3.4.2/lib/python3.4/test/test_email/data/msg_20.txt +22 -0
  1768. package/python3.4.2/lib/python3.4/test/test_email/data/msg_21.txt +20 -0
  1769. package/python3.4.2/lib/python3.4/test/test_email/data/msg_22.txt +46 -0
  1770. package/python3.4.2/lib/python3.4/test/test_email/data/msg_23.txt +8 -0
  1771. package/python3.4.2/lib/python3.4/test/test_email/data/msg_24.txt +10 -0
  1772. package/python3.4.2/lib/python3.4/test/test_email/data/msg_25.txt +117 -0
  1773. package/python3.4.2/lib/python3.4/test/test_email/data/msg_26.txt +46 -0
  1774. package/python3.4.2/lib/python3.4/test/test_email/data/msg_27.txt +15 -0
  1775. package/python3.4.2/lib/python3.4/test/test_email/data/msg_28.txt +25 -0
  1776. package/python3.4.2/lib/python3.4/test/test_email/data/msg_29.txt +22 -0
  1777. package/python3.4.2/lib/python3.4/test/test_email/data/msg_30.txt +23 -0
  1778. package/python3.4.2/lib/python3.4/test/test_email/data/msg_31.txt +15 -0
  1779. package/python3.4.2/lib/python3.4/test/test_email/data/msg_32.txt +14 -0
  1780. package/python3.4.2/lib/python3.4/test/test_email/data/msg_33.txt +29 -0
  1781. package/python3.4.2/lib/python3.4/test/test_email/data/msg_34.txt +19 -0
  1782. package/python3.4.2/lib/python3.4/test/test_email/data/msg_35.txt +4 -0
  1783. package/python3.4.2/lib/python3.4/test/test_email/data/msg_36.txt +40 -0
  1784. package/python3.4.2/lib/python3.4/test/test_email/data/msg_37.txt +22 -0
  1785. package/python3.4.2/lib/python3.4/test/test_email/data/msg_38.txt +101 -0
  1786. package/python3.4.2/lib/python3.4/test/test_email/data/msg_39.txt +83 -0
  1787. package/python3.4.2/lib/python3.4/test/test_email/data/msg_40.txt +10 -0
  1788. package/python3.4.2/lib/python3.4/test/test_email/data/msg_41.txt +8 -0
  1789. package/python3.4.2/lib/python3.4/test/test_email/data/msg_42.txt +20 -0
  1790. package/python3.4.2/lib/python3.4/test/test_email/data/msg_43.txt +217 -0
  1791. package/python3.4.2/lib/python3.4/test/test_email/data/msg_44.txt +33 -0
  1792. package/python3.4.2/lib/python3.4/test/test_email/data/msg_45.txt +33 -0
  1793. package/python3.4.2/lib/python3.4/test/test_email/data/msg_46.txt +23 -0
  1794. package/python3.4.2/lib/python3.4/test/test_email/test__encoded_words.py +192 -0
  1795. package/python3.4.2/lib/python3.4/test/test_email/test__header_value_parser.py +2606 -0
  1796. package/python3.4.2/lib/python3.4/test/test_email/test_asian_codecs.py +82 -0
  1797. package/python3.4.2/lib/python3.4/test/test_email/test_contentmanager.py +796 -0
  1798. package/python3.4.2/lib/python3.4/test/test_email/test_defect_handling.py +320 -0
  1799. package/python3.4.2/lib/python3.4/test/test_email/test_email.py +5289 -0
  1800. package/python3.4.2/lib/python3.4/test/test_email/test_generator.py +199 -0
  1801. package/python3.4.2/lib/python3.4/test/test_email/test_headerregistry.py +1594 -0
  1802. package/python3.4.2/lib/python3.4/test/test_email/test_inversion.py +49 -0
  1803. package/python3.4.2/lib/python3.4/test/test_email/test_message.py +783 -0
  1804. package/python3.4.2/lib/python3.4/test/test_email/test_parser.py +36 -0
  1805. package/python3.4.2/lib/python3.4/test/test_email/test_pickleable.py +74 -0
  1806. package/python3.4.2/lib/python3.4/test/test_email/test_policy.py +332 -0
  1807. package/python3.4.2/lib/python3.4/test/test_email/test_utils.py +140 -0
  1808. package/python3.4.2/lib/python3.4/test/test_email/torture_test.py +136 -0
  1809. package/python3.4.2/lib/python3.4/test/test_ensurepip.py +345 -0
  1810. package/python3.4.2/lib/python3.4/test/test_enum.py +1592 -0
  1811. package/python3.4.2/lib/python3.4/test/test_enumerate.py +272 -0
  1812. package/python3.4.2/lib/python3.4/test/test_eof.py +31 -0
  1813. package/python3.4.2/lib/python3.4/test/test_epoll.py +259 -0
  1814. package/python3.4.2/lib/python3.4/test/test_errno.py +40 -0
  1815. package/python3.4.2/lib/python3.4/test/test_exception_variations.py +180 -0
  1816. package/python3.4.2/lib/python3.4/test/test_exceptions.py +978 -0
  1817. package/python3.4.2/lib/python3.4/test/test_extcall.py +349 -0
  1818. package/python3.4.2/lib/python3.4/test/test_faulthandler.py +623 -0
  1819. package/python3.4.2/lib/python3.4/test/test_fcntl.py +152 -0
  1820. package/python3.4.2/lib/python3.4/test/test_file.py +329 -0
  1821. package/python3.4.2/lib/python3.4/test/test_file_eintr.py +236 -0
  1822. package/python3.4.2/lib/python3.4/test/test_filecmp.py +217 -0
  1823. package/python3.4.2/lib/python3.4/test/test_fileinput.py +891 -0
  1824. package/python3.4.2/lib/python3.4/test/test_fileio.py +480 -0
  1825. package/python3.4.2/lib/python3.4/test/test_finalization.py +522 -0
  1826. package/python3.4.2/lib/python3.4/test/test_float.py +1312 -0
  1827. package/python3.4.2/lib/python3.4/test/test_flufl.py +27 -0
  1828. package/python3.4.2/lib/python3.4/test/test_fnmatch.py +89 -0
  1829. package/python3.4.2/lib/python3.4/test/test_fork1.py +111 -0
  1830. package/python3.4.2/lib/python3.4/test/test_format.py +362 -0
  1831. package/python3.4.2/lib/python3.4/test/test_fractions.py +612 -0
  1832. package/python3.4.2/lib/python3.4/test/test_frame.py +168 -0
  1833. package/python3.4.2/lib/python3.4/test/test_ftplib.py +1080 -0
  1834. package/python3.4.2/lib/python3.4/test/test_funcattrs.py +385 -0
  1835. package/python3.4.2/lib/python3.4/test/test_functools.py +1584 -0
  1836. package/python3.4.2/lib/python3.4/test/test_future.py +125 -0
  1837. package/python3.4.2/lib/python3.4/test/test_future3.py +26 -0
  1838. package/python3.4.2/lib/python3.4/test/test_future4.py +6 -0
  1839. package/python3.4.2/lib/python3.4/test/test_future5.py +21 -0
  1840. package/python3.4.2/lib/python3.4/test/test_gc.py +1013 -0
  1841. package/python3.4.2/lib/python3.4/test/test_gdb.py +870 -0
  1842. package/python3.4.2/lib/python3.4/test/test_generators.py +1940 -0
  1843. package/python3.4.2/lib/python3.4/test/test_genericpath.py +439 -0
  1844. package/python3.4.2/lib/python3.4/test/test_genexps.py +285 -0
  1845. package/python3.4.2/lib/python3.4/test/test_getargs2.py +615 -0
  1846. package/python3.4.2/lib/python3.4/test/test_getopt.py +187 -0
  1847. package/python3.4.2/lib/python3.4/test/test_getpass.py +163 -0
  1848. package/python3.4.2/lib/python3.4/test/test_gettext.py +467 -0
  1849. package/python3.4.2/lib/python3.4/test/test_glob.py +200 -0
  1850. package/python3.4.2/lib/python3.4/test/test_global.py +61 -0
  1851. package/python3.4.2/lib/python3.4/test/test_grammar.py +1024 -0
  1852. package/python3.4.2/lib/python3.4/test/test_grp.py +99 -0
  1853. package/python3.4.2/lib/python3.4/test/test_gzip.py +561 -0
  1854. package/python3.4.2/lib/python3.4/test/test_hash.py +346 -0
  1855. package/python3.4.2/lib/python3.4/test/test_hashlib.py +533 -0
  1856. package/python3.4.2/lib/python3.4/test/test_heapq.py +417 -0
  1857. package/python3.4.2/lib/python3.4/test/test_hmac.py +506 -0
  1858. package/python3.4.2/lib/python3.4/test/test_html.py +104 -0
  1859. package/python3.4.2/lib/python3.4/test/test_htmlparser.py +832 -0
  1860. package/python3.4.2/lib/python3.4/test/test_http_cookiejar.py +1714 -0
  1861. package/python3.4.2/lib/python3.4/test/test_http_cookies.py +243 -0
  1862. package/python3.4.2/lib/python3.4/test/test_httplib.py +1025 -0
  1863. package/python3.4.2/lib/python3.4/test/test_httpservers.py +770 -0
  1864. package/python3.4.2/lib/python3.4/test/test_idle.py +16 -0
  1865. package/python3.4.2/lib/python3.4/test/test_imaplib.py +504 -0
  1866. package/python3.4.2/lib/python3.4/test/test_imghdr.py +131 -0
  1867. package/python3.4.2/lib/python3.4/test/test_imp.py +485 -0
  1868. package/python3.4.2/lib/python3.4/test/test_import.py +1072 -0
  1869. package/python3.4.2/lib/python3.4/test/test_importlib/__init__.py +5 -0
  1870. package/python3.4.2/lib/python3.4/test/test_importlib/__main__.py +4 -0
  1871. package/python3.4.2/lib/python3.4/test/test_importlib/abc.py +94 -0
  1872. package/python3.4.2/lib/python3.4/test/test_importlib/builtin/__init__.py +5 -0
  1873. package/python3.4.2/lib/python3.4/test/test_importlib/builtin/__main__.py +4 -0
  1874. package/python3.4.2/lib/python3.4/test/test_importlib/builtin/test_finder.py +85 -0
  1875. package/python3.4.2/lib/python3.4/test/test_importlib/builtin/test_loader.py +106 -0
  1876. package/python3.4.2/lib/python3.4/test/test_importlib/builtin/util.py +7 -0
  1877. package/python3.4.2/lib/python3.4/test/test_importlib/extension/__init__.py +5 -0
  1878. package/python3.4.2/lib/python3.4/test/test_importlib/extension/__main__.py +4 -0
  1879. package/python3.4.2/lib/python3.4/test/test_importlib/extension/test_case_sensitivity.py +51 -0
  1880. package/python3.4.2/lib/python3.4/test/test_importlib/extension/test_finder.py +44 -0
  1881. package/python3.4.2/lib/python3.4/test/test_importlib/extension/test_loader.py +86 -0
  1882. package/python3.4.2/lib/python3.4/test/test_importlib/extension/test_path_hook.py +32 -0
  1883. package/python3.4.2/lib/python3.4/test/test_importlib/extension/util.py +19 -0
  1884. package/python3.4.2/lib/python3.4/test/test_importlib/frozen/__init__.py +5 -0
  1885. package/python3.4.2/lib/python3.4/test/test_importlib/frozen/__main__.py +4 -0
  1886. package/python3.4.2/lib/python3.4/test/test_importlib/frozen/test_finder.py +80 -0
  1887. package/python3.4.2/lib/python3.4/test/test_importlib/frozen/test_loader.py +222 -0
  1888. package/python3.4.2/lib/python3.4/test/test_importlib/import_/__init__.py +5 -0
  1889. package/python3.4.2/lib/python3.4/test/test_importlib/import_/__main__.py +4 -0
  1890. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test___loader__.py +70 -0
  1891. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test___package__.py +133 -0
  1892. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_api.py +94 -0
  1893. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_caching.py +92 -0
  1894. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_fromlist.py +129 -0
  1895. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_meta_path.py +119 -0
  1896. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_packages.py +110 -0
  1897. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_path.py +144 -0
  1898. package/python3.4.2/lib/python3.4/test/test_importlib/import_/test_relative_imports.py +216 -0
  1899. package/python3.4.2/lib/python3.4/test/test_importlib/import_/util.py +20 -0
  1900. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/both_portions/foo/one.py +1 -0
  1901. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/both_portions/foo/two.py +1 -0
  1902. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/missing_directory.zip +0 -0
  1903. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test/empty +0 -0
  1904. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test.py +1 -0
  1905. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/nested_portion1.zip +0 -0
  1906. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/not_a_namespace_pkg/foo/__init__.py +0 -0
  1907. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/not_a_namespace_pkg/foo/one.py +1 -0
  1908. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/portion1/foo/one.py +1 -0
  1909. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/portion2/foo/two.py +1 -0
  1910. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/project1/parent/child/one.py +1 -0
  1911. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/project2/parent/child/two.py +1 -0
  1912. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/project3/parent/child/three.py +1 -0
  1913. package/python3.4.2/lib/python3.4/test/test_importlib/namespace_pkgs/top_level_portion1.zip +0 -0
  1914. package/python3.4.2/lib/python3.4/test/test_importlib/regrtest.py +17 -0
  1915. package/python3.4.2/lib/python3.4/test/test_importlib/source/__init__.py +5 -0
  1916. package/python3.4.2/lib/python3.4/test/test_importlib/source/__main__.py +4 -0
  1917. package/python3.4.2/lib/python3.4/test/test_importlib/source/test_case_sensitivity.py +83 -0
  1918. package/python3.4.2/lib/python3.4/test/test_importlib/source/test_file_loader.py +588 -0
  1919. package/python3.4.2/lib/python3.4/test/test_importlib/source/test_finder.py +232 -0
  1920. package/python3.4.2/lib/python3.4/test/test_importlib/source/test_path_hook.py +30 -0
  1921. package/python3.4.2/lib/python3.4/test/test_importlib/source/test_source_encoding.py +165 -0
  1922. package/python3.4.2/lib/python3.4/test/test_importlib/source/util.py +96 -0
  1923. package/python3.4.2/lib/python3.4/test/test_importlib/test_abc.py +951 -0
  1924. package/python3.4.2/lib/python3.4/test/test_importlib/test_api.py +437 -0
  1925. package/python3.4.2/lib/python3.4/test/test_importlib/test_locks.py +156 -0
  1926. package/python3.4.2/lib/python3.4/test/test_importlib/test_namespace_pkgs.py +293 -0
  1927. package/python3.4.2/lib/python3.4/test/test_importlib/test_spec.py +957 -0
  1928. package/python3.4.2/lib/python3.4/test/test_importlib/test_util.py +592 -0
  1929. package/python3.4.2/lib/python3.4/test/test_importlib/test_windows.py +29 -0
  1930. package/python3.4.2/lib/python3.4/test/test_importlib/util.py +225 -0
  1931. package/python3.4.2/lib/python3.4/test/test_index.py +275 -0
  1932. package/python3.4.2/lib/python3.4/test/test_inspect.py +3103 -0
  1933. package/python3.4.2/lib/python3.4/test/test_int.py +458 -0
  1934. package/python3.4.2/lib/python3.4/test/test_int_literal.py +147 -0
  1935. package/python3.4.2/lib/python3.4/test/test_io.py +3481 -0
  1936. package/python3.4.2/lib/python3.4/test/test_ioctl.py +91 -0
  1937. package/python3.4.2/lib/python3.4/test/test_ipaddress.py +1693 -0
  1938. package/python3.4.2/lib/python3.4/test/test_isinstance.py +289 -0
  1939. package/python3.4.2/lib/python3.4/test/test_iter.py +927 -0
  1940. package/python3.4.2/lib/python3.4/test/test_iterlen.py +229 -0
  1941. package/python3.4.2/lib/python3.4/test/test_itertools.py +2142 -0
  1942. package/python3.4.2/lib/python3.4/test/test_json/__init__.py +53 -0
  1943. package/python3.4.2/lib/python3.4/test/test_json/__main__.py +4 -0
  1944. package/python3.4.2/lib/python3.4/test/test_json/test_decode.py +99 -0
  1945. package/python3.4.2/lib/python3.4/test/test_json/test_default.py +12 -0
  1946. package/python3.4.2/lib/python3.4/test/test_json/test_dump.py +49 -0
  1947. package/python3.4.2/lib/python3.4/test/test_json/test_encode_basestring_ascii.py +44 -0
  1948. package/python3.4.2/lib/python3.4/test/test_json/test_enum.py +120 -0
  1949. package/python3.4.2/lib/python3.4/test/test_json/test_fail.py +194 -0
  1950. package/python3.4.2/lib/python3.4/test/test_json/test_float.py +33 -0
  1951. package/python3.4.2/lib/python3.4/test/test_json/test_indent.py +67 -0
  1952. package/python3.4.2/lib/python3.4/test/test_json/test_pass1.py +75 -0
  1953. package/python3.4.2/lib/python3.4/test/test_json/test_pass2.py +18 -0
  1954. package/python3.4.2/lib/python3.4/test/test_json/test_pass3.py +24 -0
  1955. package/python3.4.2/lib/python3.4/test/test_json/test_recursion.py +100 -0
  1956. package/python3.4.2/lib/python3.4/test/test_json/test_scanstring.py +141 -0
  1957. package/python3.4.2/lib/python3.4/test/test_json/test_separators.py +44 -0
  1958. package/python3.4.2/lib/python3.4/test/test_json/test_speedups.py +24 -0
  1959. package/python3.4.2/lib/python3.4/test/test_json/test_tool.py +69 -0
  1960. package/python3.4.2/lib/python3.4/test/test_json/test_unicode.py +75 -0
  1961. package/python3.4.2/lib/python3.4/test/test_keyword.py +138 -0
  1962. package/python3.4.2/lib/python3.4/test/test_keywordonlyarg.py +193 -0
  1963. package/python3.4.2/lib/python3.4/test/test_kqueue.py +219 -0
  1964. package/python3.4.2/lib/python3.4/test/test_largefile.py +180 -0
  1965. package/python3.4.2/lib/python3.4/test/test_lib2to3.py +22 -0
  1966. package/python3.4.2/lib/python3.4/test/test_linecache.py +133 -0
  1967. package/python3.4.2/lib/python3.4/test/test_list.py +125 -0
  1968. package/python3.4.2/lib/python3.4/test/test_listcomps.py +148 -0
  1969. package/python3.4.2/lib/python3.4/test/test_locale.py +528 -0
  1970. package/python3.4.2/lib/python3.4/test/test_logging.py +4179 -0
  1971. package/python3.4.2/lib/python3.4/test/test_long.py +1250 -0
  1972. package/python3.4.2/lib/python3.4/test/test_longexp.py +14 -0
  1973. package/python3.4.2/lib/python3.4/test/test_lzma.py +1592 -0
  1974. package/python3.4.2/lib/python3.4/test/test_macpath.py +123 -0
  1975. package/python3.4.2/lib/python3.4/test/test_macurl2path.py +31 -0
  1976. package/python3.4.2/lib/python3.4/test/test_mailbox.py +2287 -0
  1977. package/python3.4.2/lib/python3.4/test/test_mailcap.py +221 -0
  1978. package/python3.4.2/lib/python3.4/test/test_marshal.py +451 -0
  1979. package/python3.4.2/lib/python3.4/test/test_math.py +1107 -0
  1980. package/python3.4.2/lib/python3.4/test/test_memoryio.py +784 -0
  1981. package/python3.4.2/lib/python3.4/test/test_memoryview.py +478 -0
  1982. package/python3.4.2/lib/python3.4/test/test_metaclass.py +265 -0
  1983. package/python3.4.2/lib/python3.4/test/test_mimetypes.py +111 -0
  1984. package/python3.4.2/lib/python3.4/test/test_minidom.py +1545 -0
  1985. package/python3.4.2/lib/python3.4/test/test_mmap.py +774 -0
  1986. package/python3.4.2/lib/python3.4/test/test_module.py +222 -0
  1987. package/python3.4.2/lib/python3.4/test/test_modulefinder.py +324 -0
  1988. package/python3.4.2/lib/python3.4/test/test_msilib.py +46 -0
  1989. package/python3.4.2/lib/python3.4/test/test_multibytecodec.py +263 -0
  1990. package/python3.4.2/lib/python3.4/test/test_multiprocessing_fork.py +7 -0
  1991. package/python3.4.2/lib/python3.4/test/test_multiprocessing_forkserver.py +7 -0
  1992. package/python3.4.2/lib/python3.4/test/test_multiprocessing_main_handling.py +289 -0
  1993. package/python3.4.2/lib/python3.4/test/test_multiprocessing_spawn.py +7 -0
  1994. package/python3.4.2/lib/python3.4/test/test_netrc.py +130 -0
  1995. package/python3.4.2/lib/python3.4/test/test_nis.py +43 -0
  1996. package/python3.4.2/lib/python3.4/test/test_nntplib.py +1429 -0
  1997. package/python3.4.2/lib/python3.4/test/test_normalization.py +104 -0
  1998. package/python3.4.2/lib/python3.4/test/test_ntpath.py +385 -0
  1999. package/python3.4.2/lib/python3.4/test/test_numeric_tower.py +206 -0
  2000. package/python3.4.2/lib/python3.4/test/test_opcodes.py +112 -0
  2001. package/python3.4.2/lib/python3.4/test/test_openpty.py +25 -0
  2002. package/python3.4.2/lib/python3.4/test/test_operator.py +484 -0
  2003. package/python3.4.2/lib/python3.4/test/test_optparse.py +1657 -0
  2004. package/python3.4.2/lib/python3.4/test/test_os.py +2550 -0
  2005. package/python3.4.2/lib/python3.4/test/test_ossaudiodev.py +202 -0
  2006. package/python3.4.2/lib/python3.4/test/test_osx_env.py +34 -0
  2007. package/python3.4.2/lib/python3.4/test/test_parser.py +745 -0
  2008. package/python3.4.2/lib/python3.4/test/test_pathlib.py +1884 -0
  2009. package/python3.4.2/lib/python3.4/test/test_pdb.py +1052 -0
  2010. package/python3.4.2/lib/python3.4/test/test_peepholer.py +339 -0
  2011. package/python3.4.2/lib/python3.4/test/test_pep247.py +70 -0
  2012. package/python3.4.2/lib/python3.4/test/test_pep277.py +201 -0
  2013. package/python3.4.2/lib/python3.4/test/test_pep292.py +247 -0
  2014. package/python3.4.2/lib/python3.4/test/test_pep3120.py +47 -0
  2015. package/python3.4.2/lib/python3.4/test/test_pep3131.py +35 -0
  2016. package/python3.4.2/lib/python3.4/test/test_pep3151.py +209 -0
  2017. package/python3.4.2/lib/python3.4/test/test_pep352.py +184 -0
  2018. package/python3.4.2/lib/python3.4/test/test_pep380.py +1023 -0
  2019. package/python3.4.2/lib/python3.4/test/test_pickle.py +156 -0
  2020. package/python3.4.2/lib/python3.4/test/test_pickletools.py +25 -0
  2021. package/python3.4.2/lib/python3.4/test/test_pipes.py +196 -0
  2022. package/python3.4.2/lib/python3.4/test/test_pkg.py +299 -0
  2023. package/python3.4.2/lib/python3.4/test/test_pkgimport.py +84 -0
  2024. package/python3.4.2/lib/python3.4/test/test_pkgutil.py +410 -0
  2025. package/python3.4.2/lib/python3.4/test/test_platform.py +320 -0
  2026. package/python3.4.2/lib/python3.4/test/test_plistlib.py +526 -0
  2027. package/python3.4.2/lib/python3.4/test/test_poll.py +215 -0
  2028. package/python3.4.2/lib/python3.4/test/test_popen.py +64 -0
  2029. package/python3.4.2/lib/python3.4/test/test_poplib.py +507 -0
  2030. package/python3.4.2/lib/python3.4/test/test_posix.py +1183 -0
  2031. package/python3.4.2/lib/python3.4/test/test_posixpath.py +544 -0
  2032. package/python3.4.2/lib/python3.4/test/test_pow.py +129 -0
  2033. package/python3.4.2/lib/python3.4/test/test_pprint.py +602 -0
  2034. package/python3.4.2/lib/python3.4/test/test_print.py +132 -0
  2035. package/python3.4.2/lib/python3.4/test/test_profile.py +187 -0
  2036. package/python3.4.2/lib/python3.4/test/test_property.py +254 -0
  2037. package/python3.4.2/lib/python3.4/test/test_pstats.py +45 -0
  2038. package/python3.4.2/lib/python3.4/test/test_pty.py +302 -0
  2039. package/python3.4.2/lib/python3.4/test/test_pulldom.py +347 -0
  2040. package/python3.4.2/lib/python3.4/test/test_pwd.py +114 -0
  2041. package/python3.4.2/lib/python3.4/test/test_py_compile.py +103 -0
  2042. package/python3.4.2/lib/python3.4/test/test_pyclbr.py +181 -0
  2043. package/python3.4.2/lib/python3.4/test/test_pydoc.py +1003 -0
  2044. package/python3.4.2/lib/python3.4/test/test_pyexpat.py +708 -0
  2045. package/python3.4.2/lib/python3.4/test/test_queue.py +363 -0
  2046. package/python3.4.2/lib/python3.4/test/test_quopri.py +208 -0
  2047. package/python3.4.2/lib/python3.4/test/test_raise.py +422 -0
  2048. package/python3.4.2/lib/python3.4/test/test_random.py +759 -0
  2049. package/python3.4.2/lib/python3.4/test/test_range.py +652 -0
  2050. package/python3.4.2/lib/python3.4/test/test_re.py +1451 -0
  2051. package/python3.4.2/lib/python3.4/test/test_readline.py +60 -0
  2052. package/python3.4.2/lib/python3.4/test/test_regrtest.py +275 -0
  2053. package/python3.4.2/lib/python3.4/test/test_reprlib.py +383 -0
  2054. package/python3.4.2/lib/python3.4/test/test_resource.py +166 -0
  2055. package/python3.4.2/lib/python3.4/test/test_richcmp.py +333 -0
  2056. package/python3.4.2/lib/python3.4/test/test_rlcompleter.py +73 -0
  2057. package/python3.4.2/lib/python3.4/test/test_robotparser.py +320 -0
  2058. package/python3.4.2/lib/python3.4/test/test_runpy.py +691 -0
  2059. package/python3.4.2/lib/python3.4/test/test_sax.py +1007 -0
  2060. package/python3.4.2/lib/python3.4/test/test_sched.py +199 -0
  2061. package/python3.4.2/lib/python3.4/test/test_scope.py +764 -0
  2062. package/python3.4.2/lib/python3.4/test/test_select.py +83 -0
  2063. package/python3.4.2/lib/python3.4/test/test_selectors.py +453 -0
  2064. package/python3.4.2/lib/python3.4/test/test_set.py +1839 -0
  2065. package/python3.4.2/lib/python3.4/test/test_setcomps.py +151 -0
  2066. package/python3.4.2/lib/python3.4/test/test_shelve.py +224 -0
  2067. package/python3.4.2/lib/python3.4/test/test_shlex.py +202 -0
  2068. package/python3.4.2/lib/python3.4/test/test_shutil.py +1766 -0
  2069. package/python3.4.2/lib/python3.4/test/test_signal.py +940 -0
  2070. package/python3.4.2/lib/python3.4/test/test_site.py +468 -0
  2071. package/python3.4.2/lib/python3.4/test/test_slice.py +247 -0
  2072. package/python3.4.2/lib/python3.4/test/test_smtpd.py +557 -0
  2073. package/python3.4.2/lib/python3.4/test/test_smtplib.py +950 -0
  2074. package/python3.4.2/lib/python3.4/test/test_smtpnet.py +86 -0
  2075. package/python3.4.2/lib/python3.4/test/test_sndhdr.py +23 -0
  2076. package/python3.4.2/lib/python3.4/test/test_socket.py +5163 -0
  2077. package/python3.4.2/lib/python3.4/test/test_socketserver.py +314 -0
  2078. package/python3.4.2/lib/python3.4/test/test_sort.py +285 -0
  2079. package/python3.4.2/lib/python3.4/test/test_source_encoding.py +145 -0
  2080. package/python3.4.2/lib/python3.4/test/test_spwd.py +60 -0
  2081. package/python3.4.2/lib/python3.4/test/test_sqlite.py +24 -0
  2082. package/python3.4.2/lib/python3.4/test/test_ssl.py +2908 -0
  2083. package/python3.4.2/lib/python3.4/test/test_startfile.py +37 -0
  2084. package/python3.4.2/lib/python3.4/test/test_stat.py +202 -0
  2085. package/python3.4.2/lib/python3.4/test/test_statistics.py +1574 -0
  2086. package/python3.4.2/lib/python3.4/test/test_strftime.py +204 -0
  2087. package/python3.4.2/lib/python3.4/test/test_string.py +174 -0
  2088. package/python3.4.2/lib/python3.4/test/test_stringprep.py +96 -0
  2089. package/python3.4.2/lib/python3.4/test/test_strlit.py +206 -0
  2090. package/python3.4.2/lib/python3.4/test/test_strptime.py +577 -0
  2091. package/python3.4.2/lib/python3.4/test/test_strtod.py +436 -0
  2092. package/python3.4.2/lib/python3.4/test/test_struct.py +667 -0
  2093. package/python3.4.2/lib/python3.4/test/test_structmembers.py +147 -0
  2094. package/python3.4.2/lib/python3.4/test/test_structseq.py +130 -0
  2095. package/python3.4.2/lib/python3.4/test/test_subprocess.py +2474 -0
  2096. package/python3.4.2/lib/python3.4/test/test_sunau.py +122 -0
  2097. package/python3.4.2/lib/python3.4/test/test_sundry.py +59 -0
  2098. package/python3.4.2/lib/python3.4/test/test_super.py +181 -0
  2099. package/python3.4.2/lib/python3.4/test/test_support.py +315 -0
  2100. package/python3.4.2/lib/python3.4/test/test_symtable.py +176 -0
  2101. package/python3.4.2/lib/python3.4/test/test_syntax.py +593 -0
  2102. package/python3.4.2/lib/python3.4/test/test_sys.py +1000 -0
  2103. package/python3.4.2/lib/python3.4/test/test_sys_setprofile.py +386 -0
  2104. package/python3.4.2/lib/python3.4/test/test_sys_settrace.py +834 -0
  2105. package/python3.4.2/lib/python3.4/test/test_sysconfig.py +423 -0
  2106. package/python3.4.2/lib/python3.4/test/test_syslog.py +43 -0
  2107. package/python3.4.2/lib/python3.4/test/test_tarfile.py +2180 -0
  2108. package/python3.4.2/lib/python3.4/test/test_tcl.py +642 -0
  2109. package/python3.4.2/lib/python3.4/test/test_telnetlib.py +401 -0
  2110. package/python3.4.2/lib/python3.4/test/test_tempfile.py +1248 -0
  2111. package/python3.4.2/lib/python3.4/test/test_textwrap.py +929 -0
  2112. package/python3.4.2/lib/python3.4/test/test_thread.py +260 -0
  2113. package/python3.4.2/lib/python3.4/test/test_threaded_import.py +244 -0
  2114. package/python3.4.2/lib/python3.4/test/test_threadedtempfile.py +78 -0
  2115. package/python3.4.2/lib/python3.4/test/test_threading.py +1021 -0
  2116. package/python3.4.2/lib/python3.4/test/test_threading_local.py +225 -0
  2117. package/python3.4.2/lib/python3.4/test/test_threadsignals.py +227 -0
  2118. package/python3.4.2/lib/python3.4/test/test_time.py +763 -0
  2119. package/python3.4.2/lib/python3.4/test/test_timeit.py +306 -0
  2120. package/python3.4.2/lib/python3.4/test/test_timeout.py +303 -0
  2121. package/python3.4.2/lib/python3.4/test/test_tk.py +18 -0
  2122. package/python3.4.2/lib/python3.4/test/test_tokenize.py +1233 -0
  2123. package/python3.4.2/lib/python3.4/test/test_trace.py +415 -0
  2124. package/python3.4.2/lib/python3.4/test/test_traceback.py +451 -0
  2125. package/python3.4.2/lib/python3.4/test/test_tracemalloc.py +826 -0
  2126. package/python3.4.2/lib/python3.4/test/test_ttk_guionly.py +37 -0
  2127. package/python3.4.2/lib/python3.4/test/test_ttk_textonly.py +17 -0
  2128. package/python3.4.2/lib/python3.4/test/test_tuple.py +208 -0
  2129. package/python3.4.2/lib/python3.4/test/test_typechecks.py +76 -0
  2130. package/python3.4.2/lib/python3.4/test/test_types.py +1178 -0
  2131. package/python3.4.2/lib/python3.4/test/test_ucn.py +240 -0
  2132. package/python3.4.2/lib/python3.4/test/test_unary.py +58 -0
  2133. package/python3.4.2/lib/python3.4/test/test_unicode.py +2596 -0
  2134. package/python3.4.2/lib/python3.4/test/test_unicode_file.py +144 -0
  2135. package/python3.4.2/lib/python3.4/test/test_unicodedata.py +323 -0
  2136. package/python3.4.2/lib/python3.4/test/test_unittest.py +16 -0
  2137. package/python3.4.2/lib/python3.4/test/test_univnewlines.py +123 -0
  2138. package/python3.4.2/lib/python3.4/test/test_unpack.py +130 -0
  2139. package/python3.4.2/lib/python3.4/test/test_unpack_ex.py +174 -0
  2140. package/python3.4.2/lib/python3.4/test/test_urllib.py +1486 -0
  2141. package/python3.4.2/lib/python3.4/test/test_urllib2.py +1646 -0
  2142. package/python3.4.2/lib/python3.4/test/test_urllib2_localnet.py +690 -0
  2143. package/python3.4.2/lib/python3.4/test/test_urllib2net.py +342 -0
  2144. package/python3.4.2/lib/python3.4/test/test_urllib_response.py +59 -0
  2145. package/python3.4.2/lib/python3.4/test/test_urllibnet.py +212 -0
  2146. package/python3.4.2/lib/python3.4/test/test_urlparse.py +879 -0
  2147. package/python3.4.2/lib/python3.4/test/test_userdict.py +199 -0
  2148. package/python3.4.2/lib/python3.4/test/test_userlist.py +65 -0
  2149. package/python3.4.2/lib/python3.4/test/test_userstring.py +47 -0
  2150. package/python3.4.2/lib/python3.4/test/test_uu.py +239 -0
  2151. package/python3.4.2/lib/python3.4/test/test_uuid.py +498 -0
  2152. package/python3.4.2/lib/python3.4/test/test_venv.py +406 -0
  2153. package/python3.4.2/lib/python3.4/test/test_wait3.py +38 -0
  2154. package/python3.4.2/lib/python3.4/test/test_wait4.py +38 -0
  2155. package/python3.4.2/lib/python3.4/test/test_warnings.py +873 -0
  2156. package/python3.4.2/lib/python3.4/test/test_wave.py +107 -0
  2157. package/python3.4.2/lib/python3.4/test/test_weakref.py +1801 -0
  2158. package/python3.4.2/lib/python3.4/test/test_weakset.py +450 -0
  2159. package/python3.4.2/lib/python3.4/test/test_webbrowser.py +192 -0
  2160. package/python3.4.2/lib/python3.4/test/test_winreg.py +485 -0
  2161. package/python3.4.2/lib/python3.4/test/test_winsound.py +253 -0
  2162. package/python3.4.2/lib/python3.4/test/test_with.py +750 -0
  2163. package/python3.4.2/lib/python3.4/test/test_wsgiref.py +640 -0
  2164. package/python3.4.2/lib/python3.4/test/test_xdrlib.py +58 -0
  2165. package/python3.4.2/lib/python3.4/test/test_xml_dom_minicompat.py +101 -0
  2166. package/python3.4.2/lib/python3.4/test/test_xml_etree.py +2587 -0
  2167. package/python3.4.2/lib/python3.4/test/test_xml_etree_c.py +94 -0
  2168. package/python3.4.2/lib/python3.4/test/test_xmlrpc.py +1114 -0
  2169. package/python3.4.2/lib/python3.4/test/test_xmlrpc_net.py +33 -0
  2170. package/python3.4.2/lib/python3.4/test/test_zipfile.py +1783 -0
  2171. package/python3.4.2/lib/python3.4/test/test_zipfile64.py +118 -0
  2172. package/python3.4.2/lib/python3.4/test/test_zipimport.py +507 -0
  2173. package/python3.4.2/lib/python3.4/test/test_zipimport_support.py +246 -0
  2174. package/python3.4.2/lib/python3.4/test/test_zlib.py +725 -0
  2175. package/python3.4.2/lib/python3.4/test/testcodec.py +48 -0
  2176. package/python3.4.2/lib/python3.4/test/testtar.tar +0 -0
  2177. package/python3.4.2/lib/python3.4/test/tf_inherit_check.py +25 -0
  2178. package/python3.4.2/lib/python3.4/test/threaded_import_hangers.py +45 -0
  2179. package/python3.4.2/lib/python3.4/test/time_hashlib.py +87 -0
  2180. package/python3.4.2/lib/python3.4/test/tokenize_tests-latin1-coding-cookie-and-utf8-bom-sig.txt +13 -0
  2181. package/python3.4.2/lib/python3.4/test/tokenize_tests-no-coding-cookie-and-utf8-bom-sig-only.txt +11 -0
  2182. package/python3.4.2/lib/python3.4/test/tokenize_tests-utf8-coding-cookie-and-no-utf8-bom-sig.txt +13 -0
  2183. package/python3.4.2/lib/python3.4/test/tokenize_tests-utf8-coding-cookie-and-utf8-bom-sig.txt +12 -0
  2184. package/python3.4.2/lib/python3.4/test/tokenize_tests.txt +189 -0
  2185. package/python3.4.2/lib/python3.4/test/tracedmodules/__init__.py +4 -0
  2186. package/python3.4.2/lib/python3.4/test/tracedmodules/testmod.py +9 -0
  2187. package/python3.4.2/lib/python3.4/test/warning_tests.py +9 -0
  2188. package/python3.4.2/lib/python3.4/test/win_console_handler.py +49 -0
  2189. package/python3.4.2/lib/python3.4/test/xmltestdata/simple-ns.xml +7 -0
  2190. package/python3.4.2/lib/python3.4/test/xmltestdata/simple.xml +6 -0
  2191. package/python3.4.2/lib/python3.4/test/xmltestdata/test.xml +115 -0
  2192. package/python3.4.2/lib/python3.4/test/xmltestdata/test.xml.out +115 -0
  2193. package/python3.4.2/lib/python3.4/test/xmltests.py +21 -0
  2194. package/python3.4.2/lib/python3.4/test/zip_cp437_header.zip +0 -0
  2195. package/python3.4.2/lib/python3.4/test/zipdir.zip +0 -0
  2196. package/python3.4.2/lib/python3.4/textwrap.py +470 -0
  2197. package/python3.4.2/lib/python3.4/this.py +28 -0
  2198. package/python3.4.2/lib/python3.4/threading.py +1359 -0
  2199. package/python3.4.2/lib/python3.4/timeit.py +322 -0
  2200. package/python3.4.2/lib/python3.4/tkinter/__init__.py +3898 -0
  2201. package/python3.4.2/lib/python3.4/tkinter/__main__.py +7 -0
  2202. package/python3.4.2/lib/python3.4/tkinter/_fix.py +78 -0
  2203. package/python3.4.2/lib/python3.4/tkinter/colorchooser.py +72 -0
  2204. package/python3.4.2/lib/python3.4/tkinter/commondialog.py +60 -0
  2205. package/python3.4.2/lib/python3.4/tkinter/constants.py +110 -0
  2206. package/python3.4.2/lib/python3.4/tkinter/dialog.py +49 -0
  2207. package/python3.4.2/lib/python3.4/tkinter/dnd.py +321 -0
  2208. package/python3.4.2/lib/python3.4/tkinter/filedialog.py +479 -0
  2209. package/python3.4.2/lib/python3.4/tkinter/font.py +234 -0
  2210. package/python3.4.2/lib/python3.4/tkinter/messagebox.py +134 -0
  2211. package/python3.4.2/lib/python3.4/tkinter/scrolledtext.py +54 -0
  2212. package/python3.4.2/lib/python3.4/tkinter/simpledialog.py +423 -0
  2213. package/python3.4.2/lib/python3.4/tkinter/test/README +14 -0
  2214. package/python3.4.2/lib/python3.4/tkinter/test/__init__.py +0 -0
  2215. package/python3.4.2/lib/python3.4/tkinter/test/runtktests.py +71 -0
  2216. package/python3.4.2/lib/python3.4/tkinter/test/support.py +104 -0
  2217. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/__init__.py +0 -0
  2218. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_font.py +27 -0
  2219. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_geometry_managers.py +900 -0
  2220. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_images.py +327 -0
  2221. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_loadtk.py +46 -0
  2222. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_misc.py +42 -0
  2223. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_text.py +47 -0
  2224. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_variables.py +186 -0
  2225. package/python3.4.2/lib/python3.4/tkinter/test/test_tkinter/test_widgets.py +1193 -0
  2226. package/python3.4.2/lib/python3.4/tkinter/test/test_ttk/__init__.py +0 -0
  2227. package/python3.4.2/lib/python3.4/tkinter/test/test_ttk/test_extensions.py +291 -0
  2228. package/python3.4.2/lib/python3.4/tkinter/test/test_ttk/test_functions.py +462 -0
  2229. package/python3.4.2/lib/python3.4/tkinter/test/test_ttk/test_style.py +92 -0
  2230. package/python3.4.2/lib/python3.4/tkinter/test/test_ttk/test_widgets.py +1598 -0
  2231. package/python3.4.2/lib/python3.4/tkinter/test/widget_tests.py +521 -0
  2232. package/python3.4.2/lib/python3.4/tkinter/tix.py +1944 -0
  2233. package/python3.4.2/lib/python3.4/tkinter/ttk.py +1616 -0
  2234. package/python3.4.2/lib/python3.4/token.py +140 -0
  2235. package/python3.4.2/lib/python3.4/tokenize.py +691 -0
  2236. package/python3.4.2/lib/python3.4/trace.py +858 -0
  2237. package/python3.4.2/lib/python3.4/traceback.py +313 -0
  2238. package/python3.4.2/lib/python3.4/tracemalloc.py +487 -0
  2239. package/python3.4.2/lib/python3.4/tty.py +36 -0
  2240. package/python3.4.2/lib/python3.4/turtle.py +4140 -0
  2241. package/python3.4.2/lib/python3.4/turtledemo/__init__.py +14 -0
  2242. package/python3.4.2/lib/python3.4/turtledemo/__main__.py +380 -0
  2243. package/python3.4.2/lib/python3.4/turtledemo/bytedesign.py +162 -0
  2244. package/python3.4.2/lib/python3.4/turtledemo/chaos.py +59 -0
  2245. package/python3.4.2/lib/python3.4/turtledemo/clock.py +132 -0
  2246. package/python3.4.2/lib/python3.4/turtledemo/colormixer.py +58 -0
  2247. package/python3.4.2/lib/python3.4/turtledemo/forest.py +108 -0
  2248. package/python3.4.2/lib/python3.4/turtledemo/fractalcurves.py +138 -0
  2249. package/python3.4.2/lib/python3.4/turtledemo/lindenmayer.py +119 -0
  2250. package/python3.4.2/lib/python3.4/turtledemo/minimal_hanoi.py +79 -0
  2251. package/python3.4.2/lib/python3.4/turtledemo/nim.py +226 -0
  2252. package/python3.4.2/lib/python3.4/turtledemo/paint.py +54 -0
  2253. package/python3.4.2/lib/python3.4/turtledemo/peace.py +61 -0
  2254. package/python3.4.2/lib/python3.4/turtledemo/penrose.py +181 -0
  2255. package/python3.4.2/lib/python3.4/turtledemo/planet_and_moon.py +112 -0
  2256. package/python3.4.2/lib/python3.4/turtledemo/round_dance.py +86 -0
  2257. package/python3.4.2/lib/python3.4/turtledemo/tree.py +63 -0
  2258. package/python3.4.2/lib/python3.4/turtledemo/turtle.cfg +10 -0
  2259. package/python3.4.2/lib/python3.4/turtledemo/two_canvases.py +54 -0
  2260. package/python3.4.2/lib/python3.4/turtledemo/wikipedia.py +65 -0
  2261. package/python3.4.2/lib/python3.4/turtledemo/yinyang.py +49 -0
  2262. package/python3.4.2/lib/python3.4/types.py +158 -0
  2263. package/python3.4.2/lib/python3.4/unittest/__init__.py +69 -0
  2264. package/python3.4.2/lib/python3.4/unittest/__main__.py +18 -0
  2265. package/python3.4.2/lib/python3.4/unittest/case.py +1400 -0
  2266. package/python3.4.2/lib/python3.4/unittest/loader.py +379 -0
  2267. package/python3.4.2/lib/python3.4/unittest/main.py +248 -0
  2268. package/python3.4.2/lib/python3.4/unittest/mock.py +2330 -0
  2269. package/python3.4.2/lib/python3.4/unittest/result.py +212 -0
  2270. package/python3.4.2/lib/python3.4/unittest/runner.py +213 -0
  2271. package/python3.4.2/lib/python3.4/unittest/signals.py +71 -0
  2272. package/python3.4.2/lib/python3.4/unittest/suite.py +324 -0
  2273. package/python3.4.2/lib/python3.4/unittest/test/__init__.py +22 -0
  2274. package/python3.4.2/lib/python3.4/unittest/test/__main__.py +18 -0
  2275. package/python3.4.2/lib/python3.4/unittest/test/_test_warnings.py +73 -0
  2276. package/python3.4.2/lib/python3.4/unittest/test/dummy.py +1 -0
  2277. package/python3.4.2/lib/python3.4/unittest/test/support.py +142 -0
  2278. package/python3.4.2/lib/python3.4/unittest/test/test_assertions.py +398 -0
  2279. package/python3.4.2/lib/python3.4/unittest/test/test_break.py +288 -0
  2280. package/python3.4.2/lib/python3.4/unittest/test/test_case.py +1574 -0
  2281. package/python3.4.2/lib/python3.4/unittest/test/test_discovery.py +527 -0
  2282. package/python3.4.2/lib/python3.4/unittest/test/test_functiontestcase.py +148 -0
  2283. package/python3.4.2/lib/python3.4/unittest/test/test_loader.py +1312 -0
  2284. package/python3.4.2/lib/python3.4/unittest/test/test_program.py +396 -0
  2285. package/python3.4.2/lib/python3.4/unittest/test/test_result.py +660 -0
  2286. package/python3.4.2/lib/python3.4/unittest/test/test_runner.py +346 -0
  2287. package/python3.4.2/lib/python3.4/unittest/test/test_setups.py +506 -0
  2288. package/python3.4.2/lib/python3.4/unittest/test/test_skipping.py +227 -0
  2289. package/python3.4.2/lib/python3.4/unittest/test/test_suite.py +447 -0
  2290. package/python3.4.2/lib/python3.4/unittest/test/testmock/__init__.py +17 -0
  2291. package/python3.4.2/lib/python3.4/unittest/test/testmock/__main__.py +18 -0
  2292. package/python3.4.2/lib/python3.4/unittest/test/testmock/support.py +23 -0
  2293. package/python3.4.2/lib/python3.4/unittest/test/testmock/testcallable.py +151 -0
  2294. package/python3.4.2/lib/python3.4/unittest/test/testmock/testhelpers.py +908 -0
  2295. package/python3.4.2/lib/python3.4/unittest/test/testmock/testmagicmethods.py +428 -0
  2296. package/python3.4.2/lib/python3.4/unittest/test/testmock/testmock.py +1412 -0
  2297. package/python3.4.2/lib/python3.4/unittest/test/testmock/testpatch.py +1801 -0
  2298. package/python3.4.2/lib/python3.4/unittest/test/testmock/testsentinel.py +28 -0
  2299. package/python3.4.2/lib/python3.4/unittest/test/testmock/testwith.py +259 -0
  2300. package/python3.4.2/lib/python3.4/unittest/util.py +177 -0
  2301. package/python3.4.2/lib/python3.4/urllib/__init__.py +0 -0
  2302. package/python3.4.2/lib/python3.4/urllib/error.py +76 -0
  2303. package/python3.4.2/lib/python3.4/urllib/parse.py +973 -0
  2304. package/python3.4.2/lib/python3.4/urllib/request.py +2559 -0
  2305. package/python3.4.2/lib/python3.4/urllib/response.py +76 -0
  2306. package/python3.4.2/lib/python3.4/urllib/robotparser.py +212 -0
  2307. package/python3.4.2/lib/python3.4/uu.py +199 -0
  2308. package/python3.4.2/lib/python3.4/uuid.py +591 -0
  2309. package/python3.4.2/lib/python3.4/venv/__init__.py +449 -0
  2310. package/python3.4.2/lib/python3.4/venv/__main__.py +10 -0
  2311. package/python3.4.2/lib/python3.4/venv/scripts/posix/activate +76 -0
  2312. package/python3.4.2/lib/python3.4/venv/scripts/posix/activate.csh +37 -0
  2313. package/python3.4.2/lib/python3.4/venv/scripts/posix/activate.fish +74 -0
  2314. package/python3.4.2/lib/python3.4/warnings.py +407 -0
  2315. package/python3.4.2/lib/python3.4/wave.py +503 -0
  2316. package/python3.4.2/lib/python3.4/weakref.py +577 -0
  2317. package/python3.4.2/lib/python3.4/webbrowser.py +651 -0
  2318. package/python3.4.2/lib/python3.4/wsgiref/__init__.py +23 -0
  2319. package/python3.4.2/lib/python3.4/wsgiref/handlers.py +547 -0
  2320. package/python3.4.2/lib/python3.4/wsgiref/headers.py +184 -0
  2321. package/python3.4.2/lib/python3.4/wsgiref/simple_server.py +165 -0
  2322. package/python3.4.2/lib/python3.4/wsgiref/util.py +165 -0
  2323. package/python3.4.2/lib/python3.4/wsgiref/validate.py +443 -0
  2324. package/python3.4.2/lib/python3.4/xdrlib.py +224 -0
  2325. package/python3.4.2/lib/python3.4/xml/__init__.py +20 -0
  2326. package/python3.4.2/lib/python3.4/xml/dom/NodeFilter.py +27 -0
  2327. package/python3.4.2/lib/python3.4/xml/dom/__init__.py +140 -0
  2328. package/python3.4.2/lib/python3.4/xml/dom/domreg.py +97 -0
  2329. package/python3.4.2/lib/python3.4/xml/dom/expatbuilder.py +965 -0
  2330. package/python3.4.2/lib/python3.4/xml/dom/minicompat.py +109 -0
  2331. package/python3.4.2/lib/python3.4/xml/dom/minidom.py +1983 -0
  2332. package/python3.4.2/lib/python3.4/xml/dom/pulldom.py +342 -0
  2333. package/python3.4.2/lib/python3.4/xml/dom/xmlbuilder.py +386 -0
  2334. package/python3.4.2/lib/python3.4/xml/etree/ElementInclude.py +143 -0
  2335. package/python3.4.2/lib/python3.4/xml/etree/ElementPath.py +308 -0
  2336. package/python3.4.2/lib/python3.4/xml/etree/ElementTree.py +1667 -0
  2337. package/python3.4.2/lib/python3.4/xml/etree/__init__.py +33 -0
  2338. package/python3.4.2/lib/python3.4/xml/etree/cElementTree.py +3 -0
  2339. package/python3.4.2/lib/python3.4/xml/parsers/__init__.py +8 -0
  2340. package/python3.4.2/lib/python3.4/xml/parsers/expat.py +8 -0
  2341. package/python3.4.2/lib/python3.4/xml/sax/__init__.py +105 -0
  2342. package/python3.4.2/lib/python3.4/xml/sax/_exceptions.py +131 -0
  2343. package/python3.4.2/lib/python3.4/xml/sax/expatreader.py +417 -0
  2344. package/python3.4.2/lib/python3.4/xml/sax/handler.py +342 -0
  2345. package/python3.4.2/lib/python3.4/xml/sax/saxutils.py +365 -0
  2346. package/python3.4.2/lib/python3.4/xml/sax/xmlreader.py +378 -0
  2347. package/python3.4.2/lib/python3.4/xmlrpc/__init__.py +1 -0
  2348. package/python3.4.2/lib/python3.4/xmlrpc/client.py +1479 -0
  2349. package/python3.4.2/lib/python3.4/xmlrpc/server.py +986 -0
  2350. package/python3.4.2/lib/python3.4/zipfile.py +1788 -0
  2351. package/python3.4.2/share/man/man1/python3.1 +460 -0
  2352. package/python3.4.2/share/man/man1/python3.4.1 +460 -0
@@ -0,0 +1,2587 @@
1
+ # IMPORTANT: the same tests are run from "test_xml_etree_c" in order
2
+ # to ensure consistency between the C implementation and the Python
3
+ # implementation.
4
+ #
5
+ # For this purpose, the module-level "ET" symbol is temporarily
6
+ # monkey-patched when running the "test_xml_etree_c" test suite.
7
+
8
+ import html
9
+ import io
10
+ import operator
11
+ import pickle
12
+ import sys
13
+ import types
14
+ import unittest
15
+ import weakref
16
+
17
+ from itertools import product
18
+ from test import support
19
+ from test.support import TESTFN, findfile, import_fresh_module, gc_collect
20
+
21
+ # pyET is the pure-Python implementation.
22
+ #
23
+ # ET is pyET in test_xml_etree and is the C accelerated version in
24
+ # test_xml_etree_c.
25
+ pyET = None
26
+ ET = None
27
+
28
+ SIMPLE_XMLFILE = findfile("simple.xml", subdir="xmltestdata")
29
+ try:
30
+ SIMPLE_XMLFILE.encode("utf-8")
31
+ except UnicodeEncodeError:
32
+ raise unittest.SkipTest("filename is not encodable to utf8")
33
+ SIMPLE_NS_XMLFILE = findfile("simple-ns.xml", subdir="xmltestdata")
34
+
35
+ SAMPLE_XML = """\
36
+ <body>
37
+ <tag class='a'>text</tag>
38
+ <tag class='b' />
39
+ <section>
40
+ <tag class='b' id='inner'>subtext</tag>
41
+ </section>
42
+ </body>
43
+ """
44
+
45
+ SAMPLE_SECTION = """\
46
+ <section>
47
+ <tag class='b' id='inner'>subtext</tag>
48
+ <nexttag />
49
+ <nextsection>
50
+ <tag />
51
+ </nextsection>
52
+ </section>
53
+ """
54
+
55
+ SAMPLE_XML_NS = """
56
+ <body xmlns="http://effbot.org/ns">
57
+ <tag>text</tag>
58
+ <tag />
59
+ <section>
60
+ <tag>subtext</tag>
61
+ </section>
62
+ </body>
63
+ """
64
+
65
+ SAMPLE_XML_NS_ELEMS = """
66
+ <root>
67
+ <h:table xmlns:h="hello">
68
+ <h:tr>
69
+ <h:td>Apples</h:td>
70
+ <h:td>Bananas</h:td>
71
+ </h:tr>
72
+ </h:table>
73
+
74
+ <f:table xmlns:f="foo">
75
+ <f:name>African Coffee Table</f:name>
76
+ <f:width>80</f:width>
77
+ <f:length>120</f:length>
78
+ </f:table>
79
+ </root>
80
+ """
81
+
82
+ ENTITY_XML = """\
83
+ <!DOCTYPE points [
84
+ <!ENTITY % user-entities SYSTEM 'user-entities.xml'>
85
+ %user-entities;
86
+ ]>
87
+ <document>&entity;</document>
88
+ """
89
+
90
+
91
+ class ModuleTest(unittest.TestCase):
92
+ # TODO: this should be removed once we get rid of the global module vars
93
+
94
+ def test_sanity(self):
95
+ # Import sanity.
96
+
97
+ from xml.etree import ElementTree
98
+ from xml.etree import ElementInclude
99
+ from xml.etree import ElementPath
100
+
101
+
102
+ def serialize(elem, to_string=True, encoding='unicode', **options):
103
+ if encoding != 'unicode':
104
+ file = io.BytesIO()
105
+ else:
106
+ file = io.StringIO()
107
+ tree = ET.ElementTree(elem)
108
+ tree.write(file, encoding=encoding, **options)
109
+ if to_string:
110
+ return file.getvalue()
111
+ else:
112
+ file.seek(0)
113
+ return file
114
+
115
+ def summarize_list(seq):
116
+ return [elem.tag for elem in seq]
117
+
118
+
119
+ class ElementTestCase:
120
+ @classmethod
121
+ def setUpClass(cls):
122
+ cls.modules = {pyET, ET}
123
+
124
+ def pickleRoundTrip(self, obj, name, dumper, loader):
125
+ save_m = sys.modules[name]
126
+ try:
127
+ sys.modules[name] = dumper
128
+ temp = pickle.dumps(obj)
129
+ sys.modules[name] = loader
130
+ result = pickle.loads(temp)
131
+ except pickle.PicklingError as pe:
132
+ # pyET must be second, because pyET may be (equal to) ET.
133
+ human = dict([(ET, "cET"), (pyET, "pyET")])
134
+ raise support.TestFailed("Failed to round-trip %r from %r to %r"
135
+ % (obj,
136
+ human.get(dumper, dumper),
137
+ human.get(loader, loader))) from pe
138
+ finally:
139
+ sys.modules[name] = save_m
140
+ return result
141
+
142
+ def assertEqualElements(self, alice, bob):
143
+ self.assertIsInstance(alice, (ET.Element, pyET.Element))
144
+ self.assertIsInstance(bob, (ET.Element, pyET.Element))
145
+ self.assertEqual(len(list(alice)), len(list(bob)))
146
+ for x, y in zip(alice, bob):
147
+ self.assertEqualElements(x, y)
148
+ properties = operator.attrgetter('tag', 'tail', 'text', 'attrib')
149
+ self.assertEqual(properties(alice), properties(bob))
150
+
151
+ # --------------------------------------------------------------------
152
+ # element tree tests
153
+
154
+ class ElementTreeTest(unittest.TestCase):
155
+
156
+ def serialize_check(self, elem, expected):
157
+ self.assertEqual(serialize(elem), expected)
158
+
159
+ def test_interface(self):
160
+ # Test element tree interface.
161
+
162
+ def check_string(string):
163
+ len(string)
164
+ for char in string:
165
+ self.assertEqual(len(char), 1,
166
+ msg="expected one-character string, got %r" % char)
167
+ new_string = string + ""
168
+ new_string = string + " "
169
+ string[:0]
170
+
171
+ def check_mapping(mapping):
172
+ len(mapping)
173
+ keys = mapping.keys()
174
+ items = mapping.items()
175
+ for key in keys:
176
+ item = mapping[key]
177
+ mapping["key"] = "value"
178
+ self.assertEqual(mapping["key"], "value",
179
+ msg="expected value string, got %r" % mapping["key"])
180
+
181
+ def check_element(element):
182
+ self.assertTrue(ET.iselement(element), msg="not an element")
183
+ self.assertTrue(hasattr(element, "tag"), msg="no tag member")
184
+ self.assertTrue(hasattr(element, "attrib"), msg="no attrib member")
185
+ self.assertTrue(hasattr(element, "text"), msg="no text member")
186
+ self.assertTrue(hasattr(element, "tail"), msg="no tail member")
187
+
188
+ check_string(element.tag)
189
+ check_mapping(element.attrib)
190
+ if element.text is not None:
191
+ check_string(element.text)
192
+ if element.tail is not None:
193
+ check_string(element.tail)
194
+ for elem in element:
195
+ check_element(elem)
196
+
197
+ element = ET.Element("tag")
198
+ check_element(element)
199
+ tree = ET.ElementTree(element)
200
+ check_element(tree.getroot())
201
+ element = ET.Element("t\xe4g", key="value")
202
+ tree = ET.ElementTree(element)
203
+ self.assertRegex(repr(element), r"^<Element 't\xe4g' at 0x.*>$")
204
+ element = ET.Element("tag", key="value")
205
+
206
+ # Make sure all standard element methods exist.
207
+
208
+ def check_method(method):
209
+ self.assertTrue(hasattr(method, '__call__'),
210
+ msg="%s not callable" % method)
211
+
212
+ check_method(element.append)
213
+ check_method(element.extend)
214
+ check_method(element.insert)
215
+ check_method(element.remove)
216
+ check_method(element.getchildren)
217
+ check_method(element.find)
218
+ check_method(element.iterfind)
219
+ check_method(element.findall)
220
+ check_method(element.findtext)
221
+ check_method(element.clear)
222
+ check_method(element.get)
223
+ check_method(element.set)
224
+ check_method(element.keys)
225
+ check_method(element.items)
226
+ check_method(element.iter)
227
+ check_method(element.itertext)
228
+ check_method(element.getiterator)
229
+
230
+ # These methods return an iterable. See bug 6472.
231
+
232
+ def check_iter(it):
233
+ check_method(it.__next__)
234
+
235
+ check_iter(element.iterfind("tag"))
236
+ check_iter(element.iterfind("*"))
237
+ check_iter(tree.iterfind("tag"))
238
+ check_iter(tree.iterfind("*"))
239
+
240
+ # These aliases are provided:
241
+
242
+ self.assertEqual(ET.XML, ET.fromstring)
243
+ self.assertEqual(ET.PI, ET.ProcessingInstruction)
244
+
245
+ def test_simpleops(self):
246
+ # Basic method sanity checks.
247
+
248
+ elem = ET.XML("<body><tag/></body>")
249
+ self.serialize_check(elem, '<body><tag /></body>')
250
+ e = ET.Element("tag2")
251
+ elem.append(e)
252
+ self.serialize_check(elem, '<body><tag /><tag2 /></body>')
253
+ elem.remove(e)
254
+ self.serialize_check(elem, '<body><tag /></body>')
255
+ elem.insert(0, e)
256
+ self.serialize_check(elem, '<body><tag2 /><tag /></body>')
257
+ elem.remove(e)
258
+ elem.extend([e])
259
+ self.serialize_check(elem, '<body><tag /><tag2 /></body>')
260
+ elem.remove(e)
261
+
262
+ element = ET.Element("tag", key="value")
263
+ self.serialize_check(element, '<tag key="value" />') # 1
264
+ subelement = ET.Element("subtag")
265
+ element.append(subelement)
266
+ self.serialize_check(element, '<tag key="value"><subtag /></tag>') # 2
267
+ element.insert(0, subelement)
268
+ self.serialize_check(element,
269
+ '<tag key="value"><subtag /><subtag /></tag>') # 3
270
+ element.remove(subelement)
271
+ self.serialize_check(element, '<tag key="value"><subtag /></tag>') # 4
272
+ element.remove(subelement)
273
+ self.serialize_check(element, '<tag key="value" />') # 5
274
+ with self.assertRaises(ValueError) as cm:
275
+ element.remove(subelement)
276
+ self.assertEqual(str(cm.exception), 'list.remove(x): x not in list')
277
+ self.serialize_check(element, '<tag key="value" />') # 6
278
+ element[0:0] = [subelement, subelement, subelement]
279
+ self.serialize_check(element[1], '<subtag />')
280
+ self.assertEqual(element[1:9], [element[1], element[2]])
281
+ self.assertEqual(element[:9:2], [element[0], element[2]])
282
+ del element[1:2]
283
+ self.serialize_check(element,
284
+ '<tag key="value"><subtag /><subtag /></tag>')
285
+
286
+ def test_cdata(self):
287
+ # Test CDATA handling (etc).
288
+
289
+ self.serialize_check(ET.XML("<tag>hello</tag>"),
290
+ '<tag>hello</tag>')
291
+ self.serialize_check(ET.XML("<tag>&#104;&#101;&#108;&#108;&#111;</tag>"),
292
+ '<tag>hello</tag>')
293
+ self.serialize_check(ET.XML("<tag><![CDATA[hello]]></tag>"),
294
+ '<tag>hello</tag>')
295
+
296
+ def test_file_init(self):
297
+ stringfile = io.BytesIO(SAMPLE_XML.encode("utf-8"))
298
+ tree = ET.ElementTree(file=stringfile)
299
+ self.assertEqual(tree.find("tag").tag, 'tag')
300
+ self.assertEqual(tree.find("section/tag").tag, 'tag')
301
+
302
+ tree = ET.ElementTree(file=SIMPLE_XMLFILE)
303
+ self.assertEqual(tree.find("element").tag, 'element')
304
+ self.assertEqual(tree.find("element/../empty-element").tag,
305
+ 'empty-element')
306
+
307
+ def test_path_cache(self):
308
+ # Check that the path cache behaves sanely.
309
+
310
+ from xml.etree import ElementPath
311
+
312
+ elem = ET.XML(SAMPLE_XML)
313
+ for i in range(10): ET.ElementTree(elem).find('./'+str(i))
314
+ cache_len_10 = len(ElementPath._cache)
315
+ for i in range(10): ET.ElementTree(elem).find('./'+str(i))
316
+ self.assertEqual(len(ElementPath._cache), cache_len_10)
317
+ for i in range(20): ET.ElementTree(elem).find('./'+str(i))
318
+ self.assertGreater(len(ElementPath._cache), cache_len_10)
319
+ for i in range(600): ET.ElementTree(elem).find('./'+str(i))
320
+ self.assertLess(len(ElementPath._cache), 500)
321
+
322
+ def test_copy(self):
323
+ # Test copy handling (etc).
324
+
325
+ import copy
326
+ e1 = ET.XML("<tag>hello<foo/></tag>")
327
+ e2 = copy.copy(e1)
328
+ e3 = copy.deepcopy(e1)
329
+ e1.find("foo").tag = "bar"
330
+ self.serialize_check(e1, '<tag>hello<bar /></tag>')
331
+ self.serialize_check(e2, '<tag>hello<bar /></tag>')
332
+ self.serialize_check(e3, '<tag>hello<foo /></tag>')
333
+
334
+ def test_attrib(self):
335
+ # Test attribute handling.
336
+
337
+ elem = ET.Element("tag")
338
+ elem.get("key") # 1.1
339
+ self.assertEqual(elem.get("key", "default"), 'default') # 1.2
340
+
341
+ elem.set("key", "value")
342
+ self.assertEqual(elem.get("key"), 'value') # 1.3
343
+
344
+ elem = ET.Element("tag", key="value")
345
+ self.assertEqual(elem.get("key"), 'value') # 2.1
346
+ self.assertEqual(elem.attrib, {'key': 'value'}) # 2.2
347
+
348
+ attrib = {"key": "value"}
349
+ elem = ET.Element("tag", attrib)
350
+ attrib.clear() # check for aliasing issues
351
+ self.assertEqual(elem.get("key"), 'value') # 3.1
352
+ self.assertEqual(elem.attrib, {'key': 'value'}) # 3.2
353
+
354
+ attrib = {"key": "value"}
355
+ elem = ET.Element("tag", **attrib)
356
+ attrib.clear() # check for aliasing issues
357
+ self.assertEqual(elem.get("key"), 'value') # 4.1
358
+ self.assertEqual(elem.attrib, {'key': 'value'}) # 4.2
359
+
360
+ elem = ET.Element("tag", {"key": "other"}, key="value")
361
+ self.assertEqual(elem.get("key"), 'value') # 5.1
362
+ self.assertEqual(elem.attrib, {'key': 'value'}) # 5.2
363
+
364
+ elem = ET.Element('test')
365
+ elem.text = "aa"
366
+ elem.set('testa', 'testval')
367
+ elem.set('testb', 'test2')
368
+ self.assertEqual(ET.tostring(elem),
369
+ b'<test testa="testval" testb="test2">aa</test>')
370
+ self.assertEqual(sorted(elem.keys()), ['testa', 'testb'])
371
+ self.assertEqual(sorted(elem.items()),
372
+ [('testa', 'testval'), ('testb', 'test2')])
373
+ self.assertEqual(elem.attrib['testb'], 'test2')
374
+ elem.attrib['testb'] = 'test1'
375
+ elem.attrib['testc'] = 'test2'
376
+ self.assertEqual(ET.tostring(elem),
377
+ b'<test testa="testval" testb="test1" testc="test2">aa</test>')
378
+
379
+ def test_makeelement(self):
380
+ # Test makeelement handling.
381
+
382
+ elem = ET.Element("tag")
383
+ attrib = {"key": "value"}
384
+ subelem = elem.makeelement("subtag", attrib)
385
+ self.assertIsNot(subelem.attrib, attrib, msg="attrib aliasing")
386
+ elem.append(subelem)
387
+ self.serialize_check(elem, '<tag><subtag key="value" /></tag>')
388
+
389
+ elem.clear()
390
+ self.serialize_check(elem, '<tag />')
391
+ elem.append(subelem)
392
+ self.serialize_check(elem, '<tag><subtag key="value" /></tag>')
393
+ elem.extend([subelem, subelem])
394
+ self.serialize_check(elem,
395
+ '<tag><subtag key="value" /><subtag key="value" /><subtag key="value" /></tag>')
396
+ elem[:] = [subelem]
397
+ self.serialize_check(elem, '<tag><subtag key="value" /></tag>')
398
+ elem[:] = tuple([subelem])
399
+ self.serialize_check(elem, '<tag><subtag key="value" /></tag>')
400
+
401
+ def test_parsefile(self):
402
+ # Test parsing from file.
403
+
404
+ tree = ET.parse(SIMPLE_XMLFILE)
405
+ stream = io.StringIO()
406
+ tree.write(stream, encoding='unicode')
407
+ self.assertEqual(stream.getvalue(),
408
+ '<root>\n'
409
+ ' <element key="value">text</element>\n'
410
+ ' <element>text</element>tail\n'
411
+ ' <empty-element />\n'
412
+ '</root>')
413
+ tree = ET.parse(SIMPLE_NS_XMLFILE)
414
+ stream = io.StringIO()
415
+ tree.write(stream, encoding='unicode')
416
+ self.assertEqual(stream.getvalue(),
417
+ '<ns0:root xmlns:ns0="namespace">\n'
418
+ ' <ns0:element key="value">text</ns0:element>\n'
419
+ ' <ns0:element>text</ns0:element>tail\n'
420
+ ' <ns0:empty-element />\n'
421
+ '</ns0:root>')
422
+
423
+ with open(SIMPLE_XMLFILE) as f:
424
+ data = f.read()
425
+
426
+ parser = ET.XMLParser()
427
+ self.assertRegex(parser.version, r'^Expat ')
428
+ parser.feed(data)
429
+ self.serialize_check(parser.close(),
430
+ '<root>\n'
431
+ ' <element key="value">text</element>\n'
432
+ ' <element>text</element>tail\n'
433
+ ' <empty-element />\n'
434
+ '</root>')
435
+
436
+ target = ET.TreeBuilder()
437
+ parser = ET.XMLParser(target=target)
438
+ parser.feed(data)
439
+ self.serialize_check(parser.close(),
440
+ '<root>\n'
441
+ ' <element key="value">text</element>\n'
442
+ ' <element>text</element>tail\n'
443
+ ' <empty-element />\n'
444
+ '</root>')
445
+
446
+ def test_parseliteral(self):
447
+ element = ET.XML("<html><body>text</body></html>")
448
+ self.assertEqual(ET.tostring(element, encoding='unicode'),
449
+ '<html><body>text</body></html>')
450
+ element = ET.fromstring("<html><body>text</body></html>")
451
+ self.assertEqual(ET.tostring(element, encoding='unicode'),
452
+ '<html><body>text</body></html>')
453
+ sequence = ["<html><body>", "text</bo", "dy></html>"]
454
+ element = ET.fromstringlist(sequence)
455
+ self.assertEqual(ET.tostring(element),
456
+ b'<html><body>text</body></html>')
457
+ self.assertEqual(b"".join(ET.tostringlist(element)),
458
+ b'<html><body>text</body></html>')
459
+ self.assertEqual(ET.tostring(element, "ascii"),
460
+ b"<?xml version='1.0' encoding='ascii'?>\n"
461
+ b"<html><body>text</body></html>")
462
+ _, ids = ET.XMLID("<html><body>text</body></html>")
463
+ self.assertEqual(len(ids), 0)
464
+ _, ids = ET.XMLID("<html><body id='body'>text</body></html>")
465
+ self.assertEqual(len(ids), 1)
466
+ self.assertEqual(ids["body"].tag, 'body')
467
+
468
+ def test_iterparse(self):
469
+ # Test iterparse interface.
470
+
471
+ iterparse = ET.iterparse
472
+
473
+ context = iterparse(SIMPLE_XMLFILE)
474
+ action, elem = next(context)
475
+ self.assertEqual((action, elem.tag), ('end', 'element'))
476
+ self.assertEqual([(action, elem.tag) for action, elem in context], [
477
+ ('end', 'element'),
478
+ ('end', 'empty-element'),
479
+ ('end', 'root'),
480
+ ])
481
+ self.assertEqual(context.root.tag, 'root')
482
+
483
+ context = iterparse(SIMPLE_NS_XMLFILE)
484
+ self.assertEqual([(action, elem.tag) for action, elem in context], [
485
+ ('end', '{namespace}element'),
486
+ ('end', '{namespace}element'),
487
+ ('end', '{namespace}empty-element'),
488
+ ('end', '{namespace}root'),
489
+ ])
490
+
491
+ events = ()
492
+ context = iterparse(SIMPLE_XMLFILE, events)
493
+ self.assertEqual([(action, elem.tag) for action, elem in context], [])
494
+
495
+ events = ()
496
+ context = iterparse(SIMPLE_XMLFILE, events=events)
497
+ self.assertEqual([(action, elem.tag) for action, elem in context], [])
498
+
499
+ events = ("start", "end")
500
+ context = iterparse(SIMPLE_XMLFILE, events)
501
+ self.assertEqual([(action, elem.tag) for action, elem in context], [
502
+ ('start', 'root'),
503
+ ('start', 'element'),
504
+ ('end', 'element'),
505
+ ('start', 'element'),
506
+ ('end', 'element'),
507
+ ('start', 'empty-element'),
508
+ ('end', 'empty-element'),
509
+ ('end', 'root'),
510
+ ])
511
+
512
+ events = ("start", "end", "start-ns", "end-ns")
513
+ context = iterparse(SIMPLE_NS_XMLFILE, events)
514
+ self.assertEqual([(action, elem.tag) if action in ("start", "end")
515
+ else (action, elem)
516
+ for action, elem in context], [
517
+ ('start-ns', ('', 'namespace')),
518
+ ('start', '{namespace}root'),
519
+ ('start', '{namespace}element'),
520
+ ('end', '{namespace}element'),
521
+ ('start', '{namespace}element'),
522
+ ('end', '{namespace}element'),
523
+ ('start', '{namespace}empty-element'),
524
+ ('end', '{namespace}empty-element'),
525
+ ('end', '{namespace}root'),
526
+ ('end-ns', None),
527
+ ])
528
+
529
+ events = ('start-ns', 'end-ns')
530
+ context = iterparse(io.StringIO(r"<root xmlns=''/>"), events)
531
+ res = [action for action, elem in context]
532
+ self.assertEqual(res, ['start-ns', 'end-ns'])
533
+
534
+ events = ("start", "end", "bogus")
535
+ with self.assertRaises(ValueError) as cm:
536
+ with open(SIMPLE_XMLFILE, "rb") as f:
537
+ iterparse(f, events)
538
+ self.assertEqual(str(cm.exception), "unknown event 'bogus'")
539
+
540
+ source = io.BytesIO(
541
+ b"<?xml version='1.0' encoding='iso-8859-1'?>\n"
542
+ b"<body xmlns='http://&#233;ffbot.org/ns'\n"
543
+ b" xmlns:cl\xe9='http://effbot.org/ns'>text</body>\n")
544
+ events = ("start-ns",)
545
+ context = iterparse(source, events)
546
+ self.assertEqual([(action, elem) for action, elem in context], [
547
+ ('start-ns', ('', 'http://\xe9ffbot.org/ns')),
548
+ ('start-ns', ('cl\xe9', 'http://effbot.org/ns')),
549
+ ])
550
+
551
+ source = io.StringIO("<document />junk")
552
+ it = iterparse(source)
553
+ action, elem = next(it)
554
+ self.assertEqual((action, elem.tag), ('end', 'document'))
555
+ with self.assertRaises(ET.ParseError) as cm:
556
+ next(it)
557
+ self.assertEqual(str(cm.exception),
558
+ 'junk after document element: line 1, column 12')
559
+
560
+ def test_writefile(self):
561
+ elem = ET.Element("tag")
562
+ elem.text = "text"
563
+ self.serialize_check(elem, '<tag>text</tag>')
564
+ ET.SubElement(elem, "subtag").text = "subtext"
565
+ self.serialize_check(elem, '<tag>text<subtag>subtext</subtag></tag>')
566
+
567
+ # Test tag suppression
568
+ elem.tag = None
569
+ self.serialize_check(elem, 'text<subtag>subtext</subtag>')
570
+ elem.insert(0, ET.Comment("comment"))
571
+ self.serialize_check(elem,
572
+ 'text<!--comment--><subtag>subtext</subtag>') # assumes 1.3
573
+
574
+ elem[0] = ET.PI("key", "value")
575
+ self.serialize_check(elem, 'text<?key value?><subtag>subtext</subtag>')
576
+
577
+ def test_custom_builder(self):
578
+ # Test parser w. custom builder.
579
+
580
+ with open(SIMPLE_XMLFILE) as f:
581
+ data = f.read()
582
+ class Builder(list):
583
+ def start(self, tag, attrib):
584
+ self.append(("start", tag))
585
+ def end(self, tag):
586
+ self.append(("end", tag))
587
+ def data(self, text):
588
+ pass
589
+ builder = Builder()
590
+ parser = ET.XMLParser(target=builder)
591
+ parser.feed(data)
592
+ self.assertEqual(builder, [
593
+ ('start', 'root'),
594
+ ('start', 'element'),
595
+ ('end', 'element'),
596
+ ('start', 'element'),
597
+ ('end', 'element'),
598
+ ('start', 'empty-element'),
599
+ ('end', 'empty-element'),
600
+ ('end', 'root'),
601
+ ])
602
+
603
+ with open(SIMPLE_NS_XMLFILE) as f:
604
+ data = f.read()
605
+ class Builder(list):
606
+ def start(self, tag, attrib):
607
+ self.append(("start", tag))
608
+ def end(self, tag):
609
+ self.append(("end", tag))
610
+ def data(self, text):
611
+ pass
612
+ def pi(self, target, data):
613
+ self.append(("pi", target, data))
614
+ def comment(self, data):
615
+ self.append(("comment", data))
616
+ builder = Builder()
617
+ parser = ET.XMLParser(target=builder)
618
+ parser.feed(data)
619
+ self.assertEqual(builder, [
620
+ ('pi', 'pi', 'data'),
621
+ ('comment', ' comment '),
622
+ ('start', '{namespace}root'),
623
+ ('start', '{namespace}element'),
624
+ ('end', '{namespace}element'),
625
+ ('start', '{namespace}element'),
626
+ ('end', '{namespace}element'),
627
+ ('start', '{namespace}empty-element'),
628
+ ('end', '{namespace}empty-element'),
629
+ ('end', '{namespace}root'),
630
+ ])
631
+
632
+
633
+ def test_getchildren(self):
634
+ # Test Element.getchildren()
635
+
636
+ with open(SIMPLE_XMLFILE, "rb") as f:
637
+ tree = ET.parse(f)
638
+ self.assertEqual([summarize_list(elem.getchildren())
639
+ for elem in tree.getroot().iter()], [
640
+ ['element', 'element', 'empty-element'],
641
+ [],
642
+ [],
643
+ [],
644
+ ])
645
+ self.assertEqual([summarize_list(elem.getchildren())
646
+ for elem in tree.getiterator()], [
647
+ ['element', 'element', 'empty-element'],
648
+ [],
649
+ [],
650
+ [],
651
+ ])
652
+
653
+ elem = ET.XML(SAMPLE_XML)
654
+ self.assertEqual(len(elem.getchildren()), 3)
655
+ self.assertEqual(len(elem[2].getchildren()), 1)
656
+ self.assertEqual(elem[:], elem.getchildren())
657
+ child1 = elem[0]
658
+ child2 = elem[2]
659
+ del elem[1:2]
660
+ self.assertEqual(len(elem.getchildren()), 2)
661
+ self.assertEqual(child1, elem[0])
662
+ self.assertEqual(child2, elem[1])
663
+ elem[0:2] = [child2, child1]
664
+ self.assertEqual(child2, elem[0])
665
+ self.assertEqual(child1, elem[1])
666
+ self.assertNotEqual(child1, elem[0])
667
+ elem.clear()
668
+ self.assertEqual(elem.getchildren(), [])
669
+
670
+ def test_writestring(self):
671
+ elem = ET.XML("<html><body>text</body></html>")
672
+ self.assertEqual(ET.tostring(elem), b'<html><body>text</body></html>')
673
+ elem = ET.fromstring("<html><body>text</body></html>")
674
+ self.assertEqual(ET.tostring(elem), b'<html><body>text</body></html>')
675
+
676
+ def test_encoding(self):
677
+ def check(encoding, body=''):
678
+ xml = ("<?xml version='1.0' encoding='%s'?><xml>%s</xml>" %
679
+ (encoding, body))
680
+ self.assertEqual(ET.XML(xml.encode(encoding)).text, body)
681
+ self.assertEqual(ET.XML(xml).text, body)
682
+ check("ascii", 'a')
683
+ check("us-ascii", 'a')
684
+ check("iso-8859-1", '\xbd')
685
+ check("iso-8859-15", '\u20ac')
686
+ check("cp437", '\u221a')
687
+ check("mac-roman", '\u02da')
688
+
689
+ def xml(encoding):
690
+ return "<?xml version='1.0' encoding='%s'?><xml />" % encoding
691
+ def bxml(encoding):
692
+ return xml(encoding).encode(encoding)
693
+ supported_encodings = [
694
+ 'ascii', 'utf-8', 'utf-8-sig', 'utf-16', 'utf-16be', 'utf-16le',
695
+ 'iso8859-1', 'iso8859-2', 'iso8859-3', 'iso8859-4', 'iso8859-5',
696
+ 'iso8859-6', 'iso8859-7', 'iso8859-8', 'iso8859-9', 'iso8859-10',
697
+ 'iso8859-13', 'iso8859-14', 'iso8859-15', 'iso8859-16',
698
+ 'cp437', 'cp720', 'cp737', 'cp775', 'cp850', 'cp852',
699
+ 'cp855', 'cp856', 'cp857', 'cp858', 'cp860', 'cp861', 'cp862',
700
+ 'cp863', 'cp865', 'cp866', 'cp869', 'cp874', 'cp1006', 'cp1125',
701
+ 'cp1250', 'cp1251', 'cp1252', 'cp1253', 'cp1254', 'cp1255',
702
+ 'cp1256', 'cp1257', 'cp1258',
703
+ 'mac-cyrillic', 'mac-greek', 'mac-iceland', 'mac-latin2',
704
+ 'mac-roman', 'mac-turkish',
705
+ 'iso2022-jp', 'iso2022-jp-1', 'iso2022-jp-2', 'iso2022-jp-2004',
706
+ 'iso2022-jp-3', 'iso2022-jp-ext',
707
+ 'koi8-r', 'koi8-u',
708
+ 'hz', 'ptcp154',
709
+ ]
710
+ for encoding in supported_encodings:
711
+ self.assertEqual(ET.tostring(ET.XML(bxml(encoding))), b'<xml />')
712
+
713
+ unsupported_ascii_compatible_encodings = [
714
+ 'big5', 'big5hkscs',
715
+ 'cp932', 'cp949', 'cp950',
716
+ 'euc-jp', 'euc-jis-2004', 'euc-jisx0213', 'euc-kr',
717
+ 'gb2312', 'gbk', 'gb18030',
718
+ 'iso2022-kr', 'johab',
719
+ 'shift-jis', 'shift-jis-2004', 'shift-jisx0213',
720
+ 'utf-7',
721
+ ]
722
+ for encoding in unsupported_ascii_compatible_encodings:
723
+ self.assertRaises(ValueError, ET.XML, bxml(encoding))
724
+
725
+ unsupported_ascii_incompatible_encodings = [
726
+ 'cp037', 'cp424', 'cp500', 'cp864', 'cp875', 'cp1026', 'cp1140',
727
+ 'utf_32', 'utf_32_be', 'utf_32_le',
728
+ ]
729
+ for encoding in unsupported_ascii_incompatible_encodings:
730
+ self.assertRaises(ET.ParseError, ET.XML, bxml(encoding))
731
+
732
+ self.assertRaises(ValueError, ET.XML, xml('undefined').encode('ascii'))
733
+ self.assertRaises(LookupError, ET.XML, xml('xxx').encode('ascii'))
734
+
735
+ def test_methods(self):
736
+ # Test serialization methods.
737
+
738
+ e = ET.XML("<html><link/><script>1 &lt; 2</script></html>")
739
+ e.tail = "\n"
740
+ self.assertEqual(serialize(e),
741
+ '<html><link /><script>1 &lt; 2</script></html>\n')
742
+ self.assertEqual(serialize(e, method=None),
743
+ '<html><link /><script>1 &lt; 2</script></html>\n')
744
+ self.assertEqual(serialize(e, method="xml"),
745
+ '<html><link /><script>1 &lt; 2</script></html>\n')
746
+ self.assertEqual(serialize(e, method="html"),
747
+ '<html><link><script>1 < 2</script></html>\n')
748
+ self.assertEqual(serialize(e, method="text"), '1 < 2\n')
749
+
750
+ def test_issue18347(self):
751
+ e = ET.XML('<html><CamelCase>text</CamelCase></html>')
752
+ self.assertEqual(serialize(e),
753
+ '<html><CamelCase>text</CamelCase></html>')
754
+ self.assertEqual(serialize(e, method="html"),
755
+ '<html><CamelCase>text</CamelCase></html>')
756
+
757
+ def test_entity(self):
758
+ # Test entity handling.
759
+
760
+ # 1) good entities
761
+
762
+ e = ET.XML("<document title='&#x8230;'>test</document>")
763
+ self.assertEqual(serialize(e, encoding="us-ascii"),
764
+ b'<document title="&#33328;">test</document>')
765
+ self.serialize_check(e, '<document title="\u8230">test</document>')
766
+
767
+ # 2) bad entities
768
+
769
+ with self.assertRaises(ET.ParseError) as cm:
770
+ ET.XML("<document>&entity;</document>")
771
+ self.assertEqual(str(cm.exception),
772
+ 'undefined entity: line 1, column 10')
773
+
774
+ with self.assertRaises(ET.ParseError) as cm:
775
+ ET.XML(ENTITY_XML)
776
+ self.assertEqual(str(cm.exception),
777
+ 'undefined entity &entity;: line 5, column 10')
778
+
779
+ # 3) custom entity
780
+
781
+ parser = ET.XMLParser()
782
+ parser.entity["entity"] = "text"
783
+ parser.feed(ENTITY_XML)
784
+ root = parser.close()
785
+ self.serialize_check(root, '<document>text</document>')
786
+
787
+ def test_namespace(self):
788
+ # Test namespace issues.
789
+
790
+ # 1) xml namespace
791
+
792
+ elem = ET.XML("<tag xml:lang='en' />")
793
+ self.serialize_check(elem, '<tag xml:lang="en" />') # 1.1
794
+
795
+ # 2) other "well-known" namespaces
796
+
797
+ elem = ET.XML("<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' />")
798
+ self.serialize_check(elem,
799
+ '<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" />') # 2.1
800
+
801
+ elem = ET.XML("<html:html xmlns:html='http://www.w3.org/1999/xhtml' />")
802
+ self.serialize_check(elem,
803
+ '<html:html xmlns:html="http://www.w3.org/1999/xhtml" />') # 2.2
804
+
805
+ elem = ET.XML("<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope' />")
806
+ self.serialize_check(elem,
807
+ '<ns0:Envelope xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope" />') # 2.3
808
+
809
+ # 3) unknown namespaces
810
+ elem = ET.XML(SAMPLE_XML_NS)
811
+ self.serialize_check(elem,
812
+ '<ns0:body xmlns:ns0="http://effbot.org/ns">\n'
813
+ ' <ns0:tag>text</ns0:tag>\n'
814
+ ' <ns0:tag />\n'
815
+ ' <ns0:section>\n'
816
+ ' <ns0:tag>subtext</ns0:tag>\n'
817
+ ' </ns0:section>\n'
818
+ '</ns0:body>')
819
+
820
+ def test_qname(self):
821
+ # Test QName handling.
822
+
823
+ # 1) decorated tags
824
+
825
+ elem = ET.Element("{uri}tag")
826
+ self.serialize_check(elem, '<ns0:tag xmlns:ns0="uri" />') # 1.1
827
+ elem = ET.Element(ET.QName("{uri}tag"))
828
+ self.serialize_check(elem, '<ns0:tag xmlns:ns0="uri" />') # 1.2
829
+ elem = ET.Element(ET.QName("uri", "tag"))
830
+ self.serialize_check(elem, '<ns0:tag xmlns:ns0="uri" />') # 1.3
831
+ elem = ET.Element(ET.QName("uri", "tag"))
832
+ subelem = ET.SubElement(elem, ET.QName("uri", "tag1"))
833
+ subelem = ET.SubElement(elem, ET.QName("uri", "tag2"))
834
+ self.serialize_check(elem,
835
+ '<ns0:tag xmlns:ns0="uri"><ns0:tag1 /><ns0:tag2 /></ns0:tag>') # 1.4
836
+
837
+ # 2) decorated attributes
838
+
839
+ elem.clear()
840
+ elem.attrib["{uri}key"] = "value"
841
+ self.serialize_check(elem,
842
+ '<ns0:tag xmlns:ns0="uri" ns0:key="value" />') # 2.1
843
+
844
+ elem.clear()
845
+ elem.attrib[ET.QName("{uri}key")] = "value"
846
+ self.serialize_check(elem,
847
+ '<ns0:tag xmlns:ns0="uri" ns0:key="value" />') # 2.2
848
+
849
+ # 3) decorated values are not converted by default, but the
850
+ # QName wrapper can be used for values
851
+
852
+ elem.clear()
853
+ elem.attrib["{uri}key"] = "{uri}value"
854
+ self.serialize_check(elem,
855
+ '<ns0:tag xmlns:ns0="uri" ns0:key="{uri}value" />') # 3.1
856
+
857
+ elem.clear()
858
+ elem.attrib["{uri}key"] = ET.QName("{uri}value")
859
+ self.serialize_check(elem,
860
+ '<ns0:tag xmlns:ns0="uri" ns0:key="ns0:value" />') # 3.2
861
+
862
+ elem.clear()
863
+ subelem = ET.Element("tag")
864
+ subelem.attrib["{uri1}key"] = ET.QName("{uri2}value")
865
+ elem.append(subelem)
866
+ elem.append(subelem)
867
+ self.serialize_check(elem,
868
+ '<ns0:tag xmlns:ns0="uri" xmlns:ns1="uri1" xmlns:ns2="uri2">'
869
+ '<tag ns1:key="ns2:value" />'
870
+ '<tag ns1:key="ns2:value" />'
871
+ '</ns0:tag>') # 3.3
872
+
873
+ # 4) Direct QName tests
874
+
875
+ self.assertEqual(str(ET.QName('ns', 'tag')), '{ns}tag')
876
+ self.assertEqual(str(ET.QName('{ns}tag')), '{ns}tag')
877
+ q1 = ET.QName('ns', 'tag')
878
+ q2 = ET.QName('ns', 'tag')
879
+ self.assertEqual(q1, q2)
880
+ q2 = ET.QName('ns', 'other-tag')
881
+ self.assertNotEqual(q1, q2)
882
+ self.assertNotEqual(q1, 'ns:tag')
883
+ self.assertEqual(q1, '{ns}tag')
884
+
885
+ def test_doctype_public(self):
886
+ # Test PUBLIC doctype.
887
+
888
+ elem = ET.XML('<!DOCTYPE html PUBLIC'
889
+ ' "-//W3C//DTD XHTML 1.0 Transitional//EN"'
890
+ ' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'
891
+ '<html>text</html>')
892
+
893
+ def test_xpath_tokenizer(self):
894
+ # Test the XPath tokenizer.
895
+ from xml.etree import ElementPath
896
+ def check(p, expected):
897
+ self.assertEqual([op or tag
898
+ for op, tag in ElementPath.xpath_tokenizer(p)],
899
+ expected)
900
+
901
+ # tests from the xml specification
902
+ check("*", ['*'])
903
+ check("text()", ['text', '()'])
904
+ check("@name", ['@', 'name'])
905
+ check("@*", ['@', '*'])
906
+ check("para[1]", ['para', '[', '1', ']'])
907
+ check("para[last()]", ['para', '[', 'last', '()', ']'])
908
+ check("*/para", ['*', '/', 'para'])
909
+ check("/doc/chapter[5]/section[2]",
910
+ ['/', 'doc', '/', 'chapter', '[', '5', ']',
911
+ '/', 'section', '[', '2', ']'])
912
+ check("chapter//para", ['chapter', '//', 'para'])
913
+ check("//para", ['//', 'para'])
914
+ check("//olist/item", ['//', 'olist', '/', 'item'])
915
+ check(".", ['.'])
916
+ check(".//para", ['.', '//', 'para'])
917
+ check("..", ['..'])
918
+ check("../@lang", ['..', '/', '@', 'lang'])
919
+ check("chapter[title]", ['chapter', '[', 'title', ']'])
920
+ check("employee[@secretary and @assistant]", ['employee',
921
+ '[', '@', 'secretary', '', 'and', '', '@', 'assistant', ']'])
922
+
923
+ # additional tests
924
+ check("{http://spam}egg", ['{http://spam}egg'])
925
+ check("./spam.egg", ['.', '/', 'spam.egg'])
926
+ check(".//{http://spam}egg", ['.', '//', '{http://spam}egg'])
927
+
928
+ def test_processinginstruction(self):
929
+ # Test ProcessingInstruction directly
930
+
931
+ self.assertEqual(ET.tostring(ET.ProcessingInstruction('test', 'instruction')),
932
+ b'<?test instruction?>')
933
+ self.assertEqual(ET.tostring(ET.PI('test', 'instruction')),
934
+ b'<?test instruction?>')
935
+
936
+ # Issue #2746
937
+
938
+ self.assertEqual(ET.tostring(ET.PI('test', '<testing&>')),
939
+ b'<?test <testing&>?>')
940
+ self.assertEqual(ET.tostring(ET.PI('test', '<testing&>\xe3'), 'latin-1'),
941
+ b"<?xml version='1.0' encoding='latin-1'?>\n"
942
+ b"<?test <testing&>\xe3?>")
943
+
944
+ def test_html_empty_elems_serialization(self):
945
+ # issue 15970
946
+ # from http://www.w3.org/TR/html401/index/elements.html
947
+ for element in ['AREA', 'BASE', 'BASEFONT', 'BR', 'COL', 'FRAME', 'HR',
948
+ 'IMG', 'INPUT', 'ISINDEX', 'LINK', 'META', 'PARAM']:
949
+ for elem in [element, element.lower()]:
950
+ expected = '<%s>' % elem
951
+ serialized = serialize(ET.XML('<%s />' % elem), method='html')
952
+ self.assertEqual(serialized, expected)
953
+ serialized = serialize(ET.XML('<%s></%s>' % (elem,elem)),
954
+ method='html')
955
+ self.assertEqual(serialized, expected)
956
+
957
+
958
+ class XMLPullParserTest(unittest.TestCase):
959
+
960
+ def _feed(self, parser, data, chunk_size=None):
961
+ if chunk_size is None:
962
+ parser.feed(data)
963
+ else:
964
+ for i in range(0, len(data), chunk_size):
965
+ parser.feed(data[i:i+chunk_size])
966
+
967
+ def assert_event_tags(self, parser, expected):
968
+ events = parser.read_events()
969
+ self.assertEqual([(action, elem.tag) for action, elem in events],
970
+ expected)
971
+
972
+ def test_simple_xml(self):
973
+ for chunk_size in (None, 1, 5):
974
+ with self.subTest(chunk_size=chunk_size):
975
+ parser = ET.XMLPullParser()
976
+ self.assert_event_tags(parser, [])
977
+ self._feed(parser, "<!-- comment -->\n", chunk_size)
978
+ self.assert_event_tags(parser, [])
979
+ self._feed(parser,
980
+ "<root>\n <element key='value'>text</element",
981
+ chunk_size)
982
+ self.assert_event_tags(parser, [])
983
+ self._feed(parser, ">\n", chunk_size)
984
+ self.assert_event_tags(parser, [('end', 'element')])
985
+ self._feed(parser, "<element>text</element>tail\n", chunk_size)
986
+ self._feed(parser, "<empty-element/>\n", chunk_size)
987
+ self.assert_event_tags(parser, [
988
+ ('end', 'element'),
989
+ ('end', 'empty-element'),
990
+ ])
991
+ self._feed(parser, "</root>\n", chunk_size)
992
+ self.assert_event_tags(parser, [('end', 'root')])
993
+ self.assertIsNone(parser.close())
994
+
995
+ def test_feed_while_iterating(self):
996
+ parser = ET.XMLPullParser()
997
+ it = parser.read_events()
998
+ self._feed(parser, "<root>\n <element key='value'>text</element>\n")
999
+ action, elem = next(it)
1000
+ self.assertEqual((action, elem.tag), ('end', 'element'))
1001
+ self._feed(parser, "</root>\n")
1002
+ action, elem = next(it)
1003
+ self.assertEqual((action, elem.tag), ('end', 'root'))
1004
+ with self.assertRaises(StopIteration):
1005
+ next(it)
1006
+
1007
+ def test_simple_xml_with_ns(self):
1008
+ parser = ET.XMLPullParser()
1009
+ self.assert_event_tags(parser, [])
1010
+ self._feed(parser, "<!-- comment -->\n")
1011
+ self.assert_event_tags(parser, [])
1012
+ self._feed(parser, "<root xmlns='namespace'>\n")
1013
+ self.assert_event_tags(parser, [])
1014
+ self._feed(parser, "<element key='value'>text</element")
1015
+ self.assert_event_tags(parser, [])
1016
+ self._feed(parser, ">\n")
1017
+ self.assert_event_tags(parser, [('end', '{namespace}element')])
1018
+ self._feed(parser, "<element>text</element>tail\n")
1019
+ self._feed(parser, "<empty-element/>\n")
1020
+ self.assert_event_tags(parser, [
1021
+ ('end', '{namespace}element'),
1022
+ ('end', '{namespace}empty-element'),
1023
+ ])
1024
+ self._feed(parser, "</root>\n")
1025
+ self.assert_event_tags(parser, [('end', '{namespace}root')])
1026
+ self.assertIsNone(parser.close())
1027
+
1028
+ def test_ns_events(self):
1029
+ parser = ET.XMLPullParser(events=('start-ns', 'end-ns'))
1030
+ self._feed(parser, "<!-- comment -->\n")
1031
+ self._feed(parser, "<root xmlns='namespace'>\n")
1032
+ self.assertEqual(
1033
+ list(parser.read_events()),
1034
+ [('start-ns', ('', 'namespace'))])
1035
+ self._feed(parser, "<element key='value'>text</element")
1036
+ self._feed(parser, ">\n")
1037
+ self._feed(parser, "<element>text</element>tail\n")
1038
+ self._feed(parser, "<empty-element/>\n")
1039
+ self._feed(parser, "</root>\n")
1040
+ self.assertEqual(list(parser.read_events()), [('end-ns', None)])
1041
+ self.assertIsNone(parser.close())
1042
+
1043
+ def test_events(self):
1044
+ parser = ET.XMLPullParser(events=())
1045
+ self._feed(parser, "<root/>\n")
1046
+ self.assert_event_tags(parser, [])
1047
+
1048
+ parser = ET.XMLPullParser(events=('start', 'end'))
1049
+ self._feed(parser, "<!-- comment -->\n")
1050
+ self.assert_event_tags(parser, [])
1051
+ self._feed(parser, "<root>\n")
1052
+ self.assert_event_tags(parser, [('start', 'root')])
1053
+ self._feed(parser, "<element key='value'>text</element")
1054
+ self.assert_event_tags(parser, [('start', 'element')])
1055
+ self._feed(parser, ">\n")
1056
+ self.assert_event_tags(parser, [('end', 'element')])
1057
+ self._feed(parser,
1058
+ "<element xmlns='foo'>text<empty-element/></element>tail\n")
1059
+ self.assert_event_tags(parser, [
1060
+ ('start', '{foo}element'),
1061
+ ('start', '{foo}empty-element'),
1062
+ ('end', '{foo}empty-element'),
1063
+ ('end', '{foo}element'),
1064
+ ])
1065
+ self._feed(parser, "</root>")
1066
+ self.assertIsNone(parser.close())
1067
+ self.assert_event_tags(parser, [('end', 'root')])
1068
+
1069
+ parser = ET.XMLPullParser(events=('start',))
1070
+ self._feed(parser, "<!-- comment -->\n")
1071
+ self.assert_event_tags(parser, [])
1072
+ self._feed(parser, "<root>\n")
1073
+ self.assert_event_tags(parser, [('start', 'root')])
1074
+ self._feed(parser, "<element key='value'>text</element")
1075
+ self.assert_event_tags(parser, [('start', 'element')])
1076
+ self._feed(parser, ">\n")
1077
+ self.assert_event_tags(parser, [])
1078
+ self._feed(parser,
1079
+ "<element xmlns='foo'>text<empty-element/></element>tail\n")
1080
+ self.assert_event_tags(parser, [
1081
+ ('start', '{foo}element'),
1082
+ ('start', '{foo}empty-element'),
1083
+ ])
1084
+ self._feed(parser, "</root>")
1085
+ self.assertIsNone(parser.close())
1086
+
1087
+ def test_events_sequence(self):
1088
+ # Test that events can be some sequence that's not just a tuple or list
1089
+ eventset = {'end', 'start'}
1090
+ parser = ET.XMLPullParser(events=eventset)
1091
+ self._feed(parser, "<foo>bar</foo>")
1092
+ self.assert_event_tags(parser, [('start', 'foo'), ('end', 'foo')])
1093
+
1094
+ class DummyIter:
1095
+ def __init__(self):
1096
+ self.events = iter(['start', 'end', 'start-ns'])
1097
+ def __iter__(self):
1098
+ return self
1099
+ def __next__(self):
1100
+ return next(self.events)
1101
+
1102
+ parser = ET.XMLPullParser(events=DummyIter())
1103
+ self._feed(parser, "<foo>bar</foo>")
1104
+ self.assert_event_tags(parser, [('start', 'foo'), ('end', 'foo')])
1105
+
1106
+
1107
+ def test_unknown_event(self):
1108
+ with self.assertRaises(ValueError):
1109
+ ET.XMLPullParser(events=('start', 'end', 'bogus'))
1110
+
1111
+
1112
+ #
1113
+ # xinclude tests (samples from appendix C of the xinclude specification)
1114
+
1115
+ XINCLUDE = {}
1116
+
1117
+ XINCLUDE["C1.xml"] = """\
1118
+ <?xml version='1.0'?>
1119
+ <document xmlns:xi="http://www.w3.org/2001/XInclude">
1120
+ <p>120 Mz is adequate for an average home user.</p>
1121
+ <xi:include href="disclaimer.xml"/>
1122
+ </document>
1123
+ """
1124
+
1125
+ XINCLUDE["disclaimer.xml"] = """\
1126
+ <?xml version='1.0'?>
1127
+ <disclaimer>
1128
+ <p>The opinions represented herein represent those of the individual
1129
+ and should not be interpreted as official policy endorsed by this
1130
+ organization.</p>
1131
+ </disclaimer>
1132
+ """
1133
+
1134
+ XINCLUDE["C2.xml"] = """\
1135
+ <?xml version='1.0'?>
1136
+ <document xmlns:xi="http://www.w3.org/2001/XInclude">
1137
+ <p>This document has been accessed
1138
+ <xi:include href="count.txt" parse="text"/> times.</p>
1139
+ </document>
1140
+ """
1141
+
1142
+ XINCLUDE["count.txt"] = "324387"
1143
+
1144
+ XINCLUDE["C2b.xml"] = """\
1145
+ <?xml version='1.0'?>
1146
+ <document xmlns:xi="http://www.w3.org/2001/XInclude">
1147
+ <p>This document has been <em>accessed</em>
1148
+ <xi:include href="count.txt" parse="text"/> times.</p>
1149
+ </document>
1150
+ """
1151
+
1152
+ XINCLUDE["C3.xml"] = """\
1153
+ <?xml version='1.0'?>
1154
+ <document xmlns:xi="http://www.w3.org/2001/XInclude">
1155
+ <p>The following is the source of the "data.xml" resource:</p>
1156
+ <example><xi:include href="data.xml" parse="text"/></example>
1157
+ </document>
1158
+ """
1159
+
1160
+ XINCLUDE["data.xml"] = """\
1161
+ <?xml version='1.0'?>
1162
+ <data>
1163
+ <item><![CDATA[Brooks & Shields]]></item>
1164
+ </data>
1165
+ """
1166
+
1167
+ XINCLUDE["C5.xml"] = """\
1168
+ <?xml version='1.0'?>
1169
+ <div xmlns:xi="http://www.w3.org/2001/XInclude">
1170
+ <xi:include href="example.txt" parse="text">
1171
+ <xi:fallback>
1172
+ <xi:include href="fallback-example.txt" parse="text">
1173
+ <xi:fallback><a href="mailto:bob@example.org">Report error</a></xi:fallback>
1174
+ </xi:include>
1175
+ </xi:fallback>
1176
+ </xi:include>
1177
+ </div>
1178
+ """
1179
+
1180
+ XINCLUDE["default.xml"] = """\
1181
+ <?xml version='1.0'?>
1182
+ <document xmlns:xi="http://www.w3.org/2001/XInclude">
1183
+ <p>Example.</p>
1184
+ <xi:include href="{}"/>
1185
+ </document>
1186
+ """.format(html.escape(SIMPLE_XMLFILE, True))
1187
+
1188
+ #
1189
+ # badly formatted xi:include tags
1190
+
1191
+ XINCLUDE_BAD = {}
1192
+
1193
+ XINCLUDE_BAD["B1.xml"] = """\
1194
+ <?xml version='1.0'?>
1195
+ <document xmlns:xi="http://www.w3.org/2001/XInclude">
1196
+ <p>120 Mz is adequate for an average home user.</p>
1197
+ <xi:include href="disclaimer.xml" parse="BAD_TYPE"/>
1198
+ </document>
1199
+ """
1200
+
1201
+ XINCLUDE_BAD["B2.xml"] = """\
1202
+ <?xml version='1.0'?>
1203
+ <div xmlns:xi="http://www.w3.org/2001/XInclude">
1204
+ <xi:fallback></xi:fallback>
1205
+ </div>
1206
+ """
1207
+
1208
+ class XIncludeTest(unittest.TestCase):
1209
+
1210
+ def xinclude_loader(self, href, parse="xml", encoding=None):
1211
+ try:
1212
+ data = XINCLUDE[href]
1213
+ except KeyError:
1214
+ raise OSError("resource not found")
1215
+ if parse == "xml":
1216
+ data = ET.XML(data)
1217
+ return data
1218
+
1219
+ def none_loader(self, href, parser, encoding=None):
1220
+ return None
1221
+
1222
+ def _my_loader(self, href, parse):
1223
+ # Used to avoid a test-dependency problem where the default loader
1224
+ # of ElementInclude uses the pyET parser for cET tests.
1225
+ if parse == 'xml':
1226
+ with open(href, 'rb') as f:
1227
+ return ET.parse(f).getroot()
1228
+ else:
1229
+ return None
1230
+
1231
+ def test_xinclude_default(self):
1232
+ from xml.etree import ElementInclude
1233
+ doc = self.xinclude_loader('default.xml')
1234
+ ElementInclude.include(doc, self._my_loader)
1235
+ self.assertEqual(serialize(doc),
1236
+ '<document>\n'
1237
+ ' <p>Example.</p>\n'
1238
+ ' <root>\n'
1239
+ ' <element key="value">text</element>\n'
1240
+ ' <element>text</element>tail\n'
1241
+ ' <empty-element />\n'
1242
+ '</root>\n'
1243
+ '</document>')
1244
+
1245
+ def test_xinclude(self):
1246
+ from xml.etree import ElementInclude
1247
+
1248
+ # Basic inclusion example (XInclude C.1)
1249
+ document = self.xinclude_loader("C1.xml")
1250
+ ElementInclude.include(document, self.xinclude_loader)
1251
+ self.assertEqual(serialize(document),
1252
+ '<document>\n'
1253
+ ' <p>120 Mz is adequate for an average home user.</p>\n'
1254
+ ' <disclaimer>\n'
1255
+ ' <p>The opinions represented herein represent those of the individual\n'
1256
+ ' and should not be interpreted as official policy endorsed by this\n'
1257
+ ' organization.</p>\n'
1258
+ '</disclaimer>\n'
1259
+ '</document>') # C1
1260
+
1261
+ # Textual inclusion example (XInclude C.2)
1262
+ document = self.xinclude_loader("C2.xml")
1263
+ ElementInclude.include(document, self.xinclude_loader)
1264
+ self.assertEqual(serialize(document),
1265
+ '<document>\n'
1266
+ ' <p>This document has been accessed\n'
1267
+ ' 324387 times.</p>\n'
1268
+ '</document>') # C2
1269
+
1270
+ # Textual inclusion after sibling element (based on modified XInclude C.2)
1271
+ document = self.xinclude_loader("C2b.xml")
1272
+ ElementInclude.include(document, self.xinclude_loader)
1273
+ self.assertEqual(serialize(document),
1274
+ '<document>\n'
1275
+ ' <p>This document has been <em>accessed</em>\n'
1276
+ ' 324387 times.</p>\n'
1277
+ '</document>') # C2b
1278
+
1279
+ # Textual inclusion of XML example (XInclude C.3)
1280
+ document = self.xinclude_loader("C3.xml")
1281
+ ElementInclude.include(document, self.xinclude_loader)
1282
+ self.assertEqual(serialize(document),
1283
+ '<document>\n'
1284
+ ' <p>The following is the source of the "data.xml" resource:</p>\n'
1285
+ " <example>&lt;?xml version='1.0'?&gt;\n"
1286
+ '&lt;data&gt;\n'
1287
+ ' &lt;item&gt;&lt;![CDATA[Brooks &amp; Shields]]&gt;&lt;/item&gt;\n'
1288
+ '&lt;/data&gt;\n'
1289
+ '</example>\n'
1290
+ '</document>') # C3
1291
+
1292
+ # Fallback example (XInclude C.5)
1293
+ # Note! Fallback support is not yet implemented
1294
+ document = self.xinclude_loader("C5.xml")
1295
+ with self.assertRaises(OSError) as cm:
1296
+ ElementInclude.include(document, self.xinclude_loader)
1297
+ self.assertEqual(str(cm.exception), 'resource not found')
1298
+ self.assertEqual(serialize(document),
1299
+ '<div xmlns:ns0="http://www.w3.org/2001/XInclude">\n'
1300
+ ' <ns0:include href="example.txt" parse="text">\n'
1301
+ ' <ns0:fallback>\n'
1302
+ ' <ns0:include href="fallback-example.txt" parse="text">\n'
1303
+ ' <ns0:fallback><a href="mailto:bob@example.org">Report error</a></ns0:fallback>\n'
1304
+ ' </ns0:include>\n'
1305
+ ' </ns0:fallback>\n'
1306
+ ' </ns0:include>\n'
1307
+ '</div>') # C5
1308
+
1309
+ def test_xinclude_failures(self):
1310
+ from xml.etree import ElementInclude
1311
+
1312
+ # Test failure to locate included XML file.
1313
+ document = ET.XML(XINCLUDE["C1.xml"])
1314
+ with self.assertRaises(ElementInclude.FatalIncludeError) as cm:
1315
+ ElementInclude.include(document, loader=self.none_loader)
1316
+ self.assertEqual(str(cm.exception),
1317
+ "cannot load 'disclaimer.xml' as 'xml'")
1318
+
1319
+ # Test failure to locate included text file.
1320
+ document = ET.XML(XINCLUDE["C2.xml"])
1321
+ with self.assertRaises(ElementInclude.FatalIncludeError) as cm:
1322
+ ElementInclude.include(document, loader=self.none_loader)
1323
+ self.assertEqual(str(cm.exception),
1324
+ "cannot load 'count.txt' as 'text'")
1325
+
1326
+ # Test bad parse type.
1327
+ document = ET.XML(XINCLUDE_BAD["B1.xml"])
1328
+ with self.assertRaises(ElementInclude.FatalIncludeError) as cm:
1329
+ ElementInclude.include(document, loader=self.none_loader)
1330
+ self.assertEqual(str(cm.exception),
1331
+ "unknown parse type in xi:include tag ('BAD_TYPE')")
1332
+
1333
+ # Test xi:fallback outside xi:include.
1334
+ document = ET.XML(XINCLUDE_BAD["B2.xml"])
1335
+ with self.assertRaises(ElementInclude.FatalIncludeError) as cm:
1336
+ ElementInclude.include(document, loader=self.none_loader)
1337
+ self.assertEqual(str(cm.exception),
1338
+ "xi:fallback tag must be child of xi:include "
1339
+ "('{http://www.w3.org/2001/XInclude}fallback')")
1340
+
1341
+ # --------------------------------------------------------------------
1342
+ # reported bugs
1343
+
1344
+ class BugsTest(unittest.TestCase):
1345
+
1346
+ def test_bug_xmltoolkit21(self):
1347
+ # marshaller gives obscure errors for non-string values
1348
+
1349
+ def check(elem):
1350
+ with self.assertRaises(TypeError) as cm:
1351
+ serialize(elem)
1352
+ self.assertEqual(str(cm.exception),
1353
+ 'cannot serialize 123 (type int)')
1354
+
1355
+ elem = ET.Element(123)
1356
+ check(elem) # tag
1357
+
1358
+ elem = ET.Element("elem")
1359
+ elem.text = 123
1360
+ check(elem) # text
1361
+
1362
+ elem = ET.Element("elem")
1363
+ elem.tail = 123
1364
+ check(elem) # tail
1365
+
1366
+ elem = ET.Element("elem")
1367
+ elem.set(123, "123")
1368
+ check(elem) # attribute key
1369
+
1370
+ elem = ET.Element("elem")
1371
+ elem.set("123", 123)
1372
+ check(elem) # attribute value
1373
+
1374
+ def test_bug_xmltoolkit25(self):
1375
+ # typo in ElementTree.findtext
1376
+
1377
+ elem = ET.XML(SAMPLE_XML)
1378
+ tree = ET.ElementTree(elem)
1379
+ self.assertEqual(tree.findtext("tag"), 'text')
1380
+ self.assertEqual(tree.findtext("section/tag"), 'subtext')
1381
+
1382
+ def test_bug_xmltoolkit28(self):
1383
+ # .//tag causes exceptions
1384
+
1385
+ tree = ET.XML("<doc><table><tbody/></table></doc>")
1386
+ self.assertEqual(summarize_list(tree.findall(".//thead")), [])
1387
+ self.assertEqual(summarize_list(tree.findall(".//tbody")), ['tbody'])
1388
+
1389
+ def test_bug_xmltoolkitX1(self):
1390
+ # dump() doesn't flush the output buffer
1391
+
1392
+ tree = ET.XML("<doc><table><tbody/></table></doc>")
1393
+ with support.captured_stdout() as stdout:
1394
+ ET.dump(tree)
1395
+ self.assertEqual(stdout.getvalue(), '<doc><table><tbody /></table></doc>\n')
1396
+
1397
+ def test_bug_xmltoolkit39(self):
1398
+ # non-ascii element and attribute names doesn't work
1399
+
1400
+ tree = ET.XML(b"<?xml version='1.0' encoding='iso-8859-1'?><t\xe4g />")
1401
+ self.assertEqual(ET.tostring(tree, "utf-8"), b'<t\xc3\xa4g />')
1402
+
1403
+ tree = ET.XML(b"<?xml version='1.0' encoding='iso-8859-1'?>"
1404
+ b"<tag \xe4ttr='v&#228;lue' />")
1405
+ self.assertEqual(tree.attrib, {'\xe4ttr': 'v\xe4lue'})
1406
+ self.assertEqual(ET.tostring(tree, "utf-8"),
1407
+ b'<tag \xc3\xa4ttr="v\xc3\xa4lue" />')
1408
+
1409
+ tree = ET.XML(b"<?xml version='1.0' encoding='iso-8859-1'?>"
1410
+ b'<t\xe4g>text</t\xe4g>')
1411
+ self.assertEqual(ET.tostring(tree, "utf-8"),
1412
+ b'<t\xc3\xa4g>text</t\xc3\xa4g>')
1413
+
1414
+ tree = ET.Element("t\u00e4g")
1415
+ self.assertEqual(ET.tostring(tree, "utf-8"), b'<t\xc3\xa4g />')
1416
+
1417
+ tree = ET.Element("tag")
1418
+ tree.set("\u00e4ttr", "v\u00e4lue")
1419
+ self.assertEqual(ET.tostring(tree, "utf-8"),
1420
+ b'<tag \xc3\xa4ttr="v\xc3\xa4lue" />')
1421
+
1422
+ def test_bug_xmltoolkit54(self):
1423
+ # problems handling internally defined entities
1424
+
1425
+ e = ET.XML("<!DOCTYPE doc [<!ENTITY ldots '&#x8230;'>]>"
1426
+ '<doc>&ldots;</doc>')
1427
+ self.assertEqual(serialize(e, encoding="us-ascii"),
1428
+ b'<doc>&#33328;</doc>')
1429
+ self.assertEqual(serialize(e), '<doc>\u8230</doc>')
1430
+
1431
+ def test_bug_xmltoolkit55(self):
1432
+ # make sure we're reporting the first error, not the last
1433
+
1434
+ with self.assertRaises(ET.ParseError) as cm:
1435
+ ET.XML(b"<!DOCTYPE doc SYSTEM 'doc.dtd'>"
1436
+ b'<doc>&ldots;&ndots;&rdots;</doc>')
1437
+ self.assertEqual(str(cm.exception),
1438
+ 'undefined entity &ldots;: line 1, column 36')
1439
+
1440
+ def test_bug_xmltoolkit60(self):
1441
+ # Handle crash in stream source.
1442
+
1443
+ class ExceptionFile:
1444
+ def read(self, x):
1445
+ raise OSError
1446
+
1447
+ self.assertRaises(OSError, ET.parse, ExceptionFile())
1448
+
1449
+ def test_bug_xmltoolkit62(self):
1450
+ # Don't crash when using custom entities.
1451
+
1452
+ ENTITIES = {'rsquo': '\u2019', 'lsquo': '\u2018'}
1453
+ parser = ET.XMLParser()
1454
+ parser.entity.update(ENTITIES)
1455
+ parser.feed("""<?xml version="1.0" encoding="UTF-8"?>
1456
+ <!DOCTYPE patent-application-publication SYSTEM "pap-v15-2001-01-31.dtd" []>
1457
+ <patent-application-publication>
1458
+ <subdoc-abstract>
1459
+ <paragraph id="A-0001" lvl="0">A new cultivar of Begonia plant named &lsquo;BCT9801BEG&rsquo;.</paragraph>
1460
+ </subdoc-abstract>
1461
+ </patent-application-publication>""")
1462
+ t = parser.close()
1463
+ self.assertEqual(t.find('.//paragraph').text,
1464
+ 'A new cultivar of Begonia plant named \u2018BCT9801BEG\u2019.')
1465
+
1466
+ def test_bug_xmltoolkit63(self):
1467
+ # Check reference leak.
1468
+ def xmltoolkit63():
1469
+ tree = ET.TreeBuilder()
1470
+ tree.start("tag", {})
1471
+ tree.data("text")
1472
+ tree.end("tag")
1473
+
1474
+ xmltoolkit63()
1475
+ count = sys.getrefcount(None)
1476
+ for i in range(1000):
1477
+ xmltoolkit63()
1478
+ self.assertEqual(sys.getrefcount(None), count)
1479
+
1480
+ def test_bug_200708_newline(self):
1481
+ # Preserve newlines in attributes.
1482
+
1483
+ e = ET.Element('SomeTag', text="def _f():\n return 3\n")
1484
+ self.assertEqual(ET.tostring(e),
1485
+ b'<SomeTag text="def _f():&#10; return 3&#10;" />')
1486
+ self.assertEqual(ET.XML(ET.tostring(e)).get("text"),
1487
+ 'def _f():\n return 3\n')
1488
+ self.assertEqual(ET.tostring(ET.XML(ET.tostring(e))),
1489
+ b'<SomeTag text="def _f():&#10; return 3&#10;" />')
1490
+
1491
+ def test_bug_200708_close(self):
1492
+ # Test default builder.
1493
+ parser = ET.XMLParser() # default
1494
+ parser.feed("<element>some text</element>")
1495
+ self.assertEqual(parser.close().tag, 'element')
1496
+
1497
+ # Test custom builder.
1498
+ class EchoTarget:
1499
+ def close(self):
1500
+ return ET.Element("element") # simulate root
1501
+ parser = ET.XMLParser(EchoTarget())
1502
+ parser.feed("<element>some text</element>")
1503
+ self.assertEqual(parser.close().tag, 'element')
1504
+
1505
+ def test_bug_200709_default_namespace(self):
1506
+ e = ET.Element("{default}elem")
1507
+ s = ET.SubElement(e, "{default}elem")
1508
+ self.assertEqual(serialize(e, default_namespace="default"), # 1
1509
+ '<elem xmlns="default"><elem /></elem>')
1510
+
1511
+ e = ET.Element("{default}elem")
1512
+ s = ET.SubElement(e, "{default}elem")
1513
+ s = ET.SubElement(e, "{not-default}elem")
1514
+ self.assertEqual(serialize(e, default_namespace="default"), # 2
1515
+ '<elem xmlns="default" xmlns:ns1="not-default">'
1516
+ '<elem />'
1517
+ '<ns1:elem />'
1518
+ '</elem>')
1519
+
1520
+ e = ET.Element("{default}elem")
1521
+ s = ET.SubElement(e, "{default}elem")
1522
+ s = ET.SubElement(e, "elem") # unprefixed name
1523
+ with self.assertRaises(ValueError) as cm:
1524
+ serialize(e, default_namespace="default") # 3
1525
+ self.assertEqual(str(cm.exception),
1526
+ 'cannot use non-qualified names with default_namespace option')
1527
+
1528
+ def test_bug_200709_register_namespace(self):
1529
+ e = ET.Element("{http://namespace.invalid/does/not/exist/}title")
1530
+ self.assertEqual(ET.tostring(e),
1531
+ b'<ns0:title xmlns:ns0="http://namespace.invalid/does/not/exist/" />')
1532
+ ET.register_namespace("foo", "http://namespace.invalid/does/not/exist/")
1533
+ e = ET.Element("{http://namespace.invalid/does/not/exist/}title")
1534
+ self.assertEqual(ET.tostring(e),
1535
+ b'<foo:title xmlns:foo="http://namespace.invalid/does/not/exist/" />')
1536
+
1537
+ # And the Dublin Core namespace is in the default list:
1538
+
1539
+ e = ET.Element("{http://purl.org/dc/elements/1.1/}title")
1540
+ self.assertEqual(ET.tostring(e),
1541
+ b'<dc:title xmlns:dc="http://purl.org/dc/elements/1.1/" />')
1542
+
1543
+ def test_bug_200709_element_comment(self):
1544
+ # Not sure if this can be fixed, really (since the serializer needs
1545
+ # ET.Comment, not cET.comment).
1546
+
1547
+ a = ET.Element('a')
1548
+ a.append(ET.Comment('foo'))
1549
+ self.assertEqual(a[0].tag, ET.Comment)
1550
+
1551
+ a = ET.Element('a')
1552
+ a.append(ET.PI('foo'))
1553
+ self.assertEqual(a[0].tag, ET.PI)
1554
+
1555
+ def test_bug_200709_element_insert(self):
1556
+ a = ET.Element('a')
1557
+ b = ET.SubElement(a, 'b')
1558
+ c = ET.SubElement(a, 'c')
1559
+ d = ET.Element('d')
1560
+ a.insert(0, d)
1561
+ self.assertEqual(summarize_list(a), ['d', 'b', 'c'])
1562
+ a.insert(-1, d)
1563
+ self.assertEqual(summarize_list(a), ['d', 'b', 'd', 'c'])
1564
+
1565
+ def test_bug_200709_iter_comment(self):
1566
+ a = ET.Element('a')
1567
+ b = ET.SubElement(a, 'b')
1568
+ comment_b = ET.Comment("TEST-b")
1569
+ b.append(comment_b)
1570
+ self.assertEqual(summarize_list(a.iter(ET.Comment)), [ET.Comment])
1571
+
1572
+ # --------------------------------------------------------------------
1573
+ # reported on bugs.python.org
1574
+
1575
+ def test_bug_1534630(self):
1576
+ bob = ET.TreeBuilder()
1577
+ e = bob.data("data")
1578
+ e = bob.start("tag", {})
1579
+ e = bob.end("tag")
1580
+ e = bob.close()
1581
+ self.assertEqual(serialize(e), '<tag />')
1582
+
1583
+ def test_issue6233(self):
1584
+ e = ET.XML(b"<?xml version='1.0' encoding='utf-8'?>"
1585
+ b'<body>t\xc3\xa3g</body>')
1586
+ self.assertEqual(ET.tostring(e, 'ascii'),
1587
+ b"<?xml version='1.0' encoding='ascii'?>\n"
1588
+ b'<body>t&#227;g</body>')
1589
+ e = ET.XML(b"<?xml version='1.0' encoding='iso-8859-1'?>"
1590
+ b'<body>t\xe3g</body>')
1591
+ self.assertEqual(ET.tostring(e, 'ascii'),
1592
+ b"<?xml version='1.0' encoding='ascii'?>\n"
1593
+ b'<body>t&#227;g</body>')
1594
+
1595
+ def test_issue3151(self):
1596
+ e = ET.XML('<prefix:localname xmlns:prefix="${stuff}"/>')
1597
+ self.assertEqual(e.tag, '{${stuff}}localname')
1598
+ t = ET.ElementTree(e)
1599
+ self.assertEqual(ET.tostring(e), b'<ns0:localname xmlns:ns0="${stuff}" />')
1600
+
1601
+ def test_issue6565(self):
1602
+ elem = ET.XML("<body><tag/></body>")
1603
+ self.assertEqual(summarize_list(elem), ['tag'])
1604
+ newelem = ET.XML(SAMPLE_XML)
1605
+ elem[:] = newelem[:]
1606
+ self.assertEqual(summarize_list(elem), ['tag', 'tag', 'section'])
1607
+
1608
+ def test_issue10777(self):
1609
+ # Registering a namespace twice caused a "dictionary changed size during
1610
+ # iteration" bug.
1611
+
1612
+ ET.register_namespace('test10777', 'http://myuri/')
1613
+ ET.register_namespace('test10777', 'http://myuri/')
1614
+
1615
+
1616
+ # --------------------------------------------------------------------
1617
+
1618
+
1619
+ class BasicElementTest(ElementTestCase, unittest.TestCase):
1620
+ def test_augmentation_type_errors(self):
1621
+ e = ET.Element('joe')
1622
+ self.assertRaises(TypeError, e.append, 'b')
1623
+ self.assertRaises(TypeError, e.extend, [ET.Element('bar'), 'foo'])
1624
+ self.assertRaises(TypeError, e.insert, 0, 'foo')
1625
+
1626
+ def test_cyclic_gc(self):
1627
+ class Dummy:
1628
+ pass
1629
+
1630
+ # Test the shortest cycle: d->element->d
1631
+ d = Dummy()
1632
+ d.dummyref = ET.Element('joe', attr=d)
1633
+ wref = weakref.ref(d)
1634
+ del d
1635
+ gc_collect()
1636
+ self.assertIsNone(wref())
1637
+
1638
+ # A longer cycle: d->e->e2->d
1639
+ e = ET.Element('joe')
1640
+ d = Dummy()
1641
+ d.dummyref = e
1642
+ wref = weakref.ref(d)
1643
+ e2 = ET.SubElement(e, 'foo', attr=d)
1644
+ del d, e, e2
1645
+ gc_collect()
1646
+ self.assertIsNone(wref())
1647
+
1648
+ # A cycle between Element objects as children of one another
1649
+ # e1->e2->e3->e1
1650
+ e1 = ET.Element('e1')
1651
+ e2 = ET.Element('e2')
1652
+ e3 = ET.Element('e3')
1653
+ e1.append(e2)
1654
+ e2.append(e2)
1655
+ e3.append(e1)
1656
+ wref = weakref.ref(e1)
1657
+ del e1, e2, e3
1658
+ gc_collect()
1659
+ self.assertIsNone(wref())
1660
+
1661
+ def test_weakref(self):
1662
+ flag = False
1663
+ def wref_cb(w):
1664
+ nonlocal flag
1665
+ flag = True
1666
+ e = ET.Element('e')
1667
+ wref = weakref.ref(e, wref_cb)
1668
+ self.assertEqual(wref().tag, 'e')
1669
+ del e
1670
+ self.assertEqual(flag, True)
1671
+ self.assertEqual(wref(), None)
1672
+
1673
+ def test_get_keyword_args(self):
1674
+ e1 = ET.Element('foo' , x=1, y=2, z=3)
1675
+ self.assertEqual(e1.get('x', default=7), 1)
1676
+ self.assertEqual(e1.get('w', default=7), 7)
1677
+
1678
+ def test_pickle(self):
1679
+ # issue #16076: the C implementation wasn't pickleable.
1680
+ for dumper, loader in product(self.modules, repeat=2):
1681
+ e = dumper.Element('foo', bar=42)
1682
+ e.text = "text goes here"
1683
+ e.tail = "opposite of head"
1684
+ dumper.SubElement(e, 'child').append(dumper.Element('grandchild'))
1685
+ e.append(dumper.Element('child'))
1686
+ e.findall('.//grandchild')[0].set('attr', 'other value')
1687
+
1688
+ e2 = self.pickleRoundTrip(e, 'xml.etree.ElementTree',
1689
+ dumper, loader)
1690
+
1691
+ self.assertEqual(e2.tag, 'foo')
1692
+ self.assertEqual(e2.attrib['bar'], 42)
1693
+ self.assertEqual(len(e2), 2)
1694
+ self.assertEqualElements(e, e2)
1695
+
1696
+ def test_pickle_issue18997(self):
1697
+ for dumper, loader in product(self.modules, repeat=2):
1698
+ XMLTEXT = """<?xml version="1.0"?>
1699
+ <group><dogs>4</dogs>
1700
+ </group>"""
1701
+ e1 = dumper.fromstring(XMLTEXT)
1702
+ if hasattr(e1, '__getstate__'):
1703
+ self.assertEqual(e1.__getstate__()['tag'], 'group')
1704
+ e2 = self.pickleRoundTrip(e1, 'xml.etree.ElementTree', dumper, loader)
1705
+ self.assertEqual(e2.tag, 'group')
1706
+ self.assertEqual(e2[0].tag, 'dogs')
1707
+
1708
+
1709
+ class ElementTreeTypeTest(unittest.TestCase):
1710
+ def test_istype(self):
1711
+ self.assertIsInstance(ET.ParseError, type)
1712
+ self.assertIsInstance(ET.QName, type)
1713
+ self.assertIsInstance(ET.ElementTree, type)
1714
+ self.assertIsInstance(ET.Element, type)
1715
+ self.assertIsInstance(ET.TreeBuilder, type)
1716
+ self.assertIsInstance(ET.XMLParser, type)
1717
+
1718
+ def test_Element_subclass_trivial(self):
1719
+ class MyElement(ET.Element):
1720
+ pass
1721
+
1722
+ mye = MyElement('foo')
1723
+ self.assertIsInstance(mye, ET.Element)
1724
+ self.assertIsInstance(mye, MyElement)
1725
+ self.assertEqual(mye.tag, 'foo')
1726
+
1727
+ # test that attribute assignment works (issue 14849)
1728
+ mye.text = "joe"
1729
+ self.assertEqual(mye.text, "joe")
1730
+
1731
+ def test_Element_subclass_constructor(self):
1732
+ class MyElement(ET.Element):
1733
+ def __init__(self, tag, attrib={}, **extra):
1734
+ super(MyElement, self).__init__(tag + '__', attrib, **extra)
1735
+
1736
+ mye = MyElement('foo', {'a': 1, 'b': 2}, c=3, d=4)
1737
+ self.assertEqual(mye.tag, 'foo__')
1738
+ self.assertEqual(sorted(mye.items()),
1739
+ [('a', 1), ('b', 2), ('c', 3), ('d', 4)])
1740
+
1741
+ def test_Element_subclass_new_method(self):
1742
+ class MyElement(ET.Element):
1743
+ def newmethod(self):
1744
+ return self.tag
1745
+
1746
+ mye = MyElement('joe')
1747
+ self.assertEqual(mye.newmethod(), 'joe')
1748
+
1749
+
1750
+ class ElementFindTest(unittest.TestCase):
1751
+ def test_find_simple(self):
1752
+ e = ET.XML(SAMPLE_XML)
1753
+ self.assertEqual(e.find('tag').tag, 'tag')
1754
+ self.assertEqual(e.find('section/tag').tag, 'tag')
1755
+ self.assertEqual(e.find('./tag').tag, 'tag')
1756
+
1757
+ e[2] = ET.XML(SAMPLE_SECTION)
1758
+ self.assertEqual(e.find('section/nexttag').tag, 'nexttag')
1759
+
1760
+ self.assertEqual(e.findtext('./tag'), 'text')
1761
+ self.assertEqual(e.findtext('section/tag'), 'subtext')
1762
+
1763
+ # section/nexttag is found but has no text
1764
+ self.assertEqual(e.findtext('section/nexttag'), '')
1765
+ self.assertEqual(e.findtext('section/nexttag', 'default'), '')
1766
+
1767
+ # tog doesn't exist and 'default' kicks in
1768
+ self.assertIsNone(e.findtext('tog'))
1769
+ self.assertEqual(e.findtext('tog', 'default'), 'default')
1770
+
1771
+ # Issue #16922
1772
+ self.assertEqual(ET.XML('<tag><empty /></tag>').findtext('empty'), '')
1773
+
1774
+ def test_find_xpath(self):
1775
+ LINEAR_XML = '''
1776
+ <body>
1777
+ <tag class='a'/>
1778
+ <tag class='b'/>
1779
+ <tag class='c'/>
1780
+ <tag class='d'/>
1781
+ </body>'''
1782
+ e = ET.XML(LINEAR_XML)
1783
+
1784
+ # Test for numeric indexing and last()
1785
+ self.assertEqual(e.find('./tag[1]').attrib['class'], 'a')
1786
+ self.assertEqual(e.find('./tag[2]').attrib['class'], 'b')
1787
+ self.assertEqual(e.find('./tag[last()]').attrib['class'], 'd')
1788
+ self.assertEqual(e.find('./tag[last()-1]').attrib['class'], 'c')
1789
+ self.assertEqual(e.find('./tag[last()-2]').attrib['class'], 'b')
1790
+
1791
+ self.assertRaisesRegex(SyntaxError, 'XPath', e.find, './tag[0]')
1792
+ self.assertRaisesRegex(SyntaxError, 'XPath', e.find, './tag[-1]')
1793
+ self.assertRaisesRegex(SyntaxError, 'XPath', e.find, './tag[last()-0]')
1794
+ self.assertRaisesRegex(SyntaxError, 'XPath', e.find, './tag[last()+1]')
1795
+
1796
+ def test_findall(self):
1797
+ e = ET.XML(SAMPLE_XML)
1798
+ e[2] = ET.XML(SAMPLE_SECTION)
1799
+ self.assertEqual(summarize_list(e.findall('.')), ['body'])
1800
+ self.assertEqual(summarize_list(e.findall('tag')), ['tag', 'tag'])
1801
+ self.assertEqual(summarize_list(e.findall('tog')), [])
1802
+ self.assertEqual(summarize_list(e.findall('tog/foo')), [])
1803
+ self.assertEqual(summarize_list(e.findall('*')),
1804
+ ['tag', 'tag', 'section'])
1805
+ self.assertEqual(summarize_list(e.findall('.//tag')),
1806
+ ['tag'] * 4)
1807
+ self.assertEqual(summarize_list(e.findall('section/tag')), ['tag'])
1808
+ self.assertEqual(summarize_list(e.findall('section//tag')), ['tag'] * 2)
1809
+ self.assertEqual(summarize_list(e.findall('section/*')),
1810
+ ['tag', 'nexttag', 'nextsection'])
1811
+ self.assertEqual(summarize_list(e.findall('section//*')),
1812
+ ['tag', 'nexttag', 'nextsection', 'tag'])
1813
+ self.assertEqual(summarize_list(e.findall('section/.//*')),
1814
+ ['tag', 'nexttag', 'nextsection', 'tag'])
1815
+ self.assertEqual(summarize_list(e.findall('*/*')),
1816
+ ['tag', 'nexttag', 'nextsection'])
1817
+ self.assertEqual(summarize_list(e.findall('*//*')),
1818
+ ['tag', 'nexttag', 'nextsection', 'tag'])
1819
+ self.assertEqual(summarize_list(e.findall('*/tag')), ['tag'])
1820
+ self.assertEqual(summarize_list(e.findall('*/./tag')), ['tag'])
1821
+ self.assertEqual(summarize_list(e.findall('./tag')), ['tag'] * 2)
1822
+ self.assertEqual(summarize_list(e.findall('././tag')), ['tag'] * 2)
1823
+
1824
+ self.assertEqual(summarize_list(e.findall('.//tag[@class]')),
1825
+ ['tag'] * 3)
1826
+ self.assertEqual(summarize_list(e.findall('.//tag[@class="a"]')),
1827
+ ['tag'])
1828
+ self.assertEqual(summarize_list(e.findall('.//tag[@class="b"]')),
1829
+ ['tag'] * 2)
1830
+ self.assertEqual(summarize_list(e.findall('.//tag[@id]')),
1831
+ ['tag'])
1832
+ self.assertEqual(summarize_list(e.findall('.//section[tag]')),
1833
+ ['section'])
1834
+ self.assertEqual(summarize_list(e.findall('.//section[element]')), [])
1835
+ self.assertEqual(summarize_list(e.findall('../tag')), [])
1836
+ self.assertEqual(summarize_list(e.findall('section/../tag')),
1837
+ ['tag'] * 2)
1838
+ self.assertEqual(e.findall('section//'), e.findall('section//*'))
1839
+
1840
+ def test_test_find_with_ns(self):
1841
+ e = ET.XML(SAMPLE_XML_NS)
1842
+ self.assertEqual(summarize_list(e.findall('tag')), [])
1843
+ self.assertEqual(
1844
+ summarize_list(e.findall("{http://effbot.org/ns}tag")),
1845
+ ['{http://effbot.org/ns}tag'] * 2)
1846
+ self.assertEqual(
1847
+ summarize_list(e.findall(".//{http://effbot.org/ns}tag")),
1848
+ ['{http://effbot.org/ns}tag'] * 3)
1849
+
1850
+ def test_findall_different_nsmaps(self):
1851
+ root = ET.XML('''
1852
+ <a xmlns:x="X" xmlns:y="Y">
1853
+ <x:b><c/></x:b>
1854
+ <b/>
1855
+ <c><x:b/><b/></c><y:b/>
1856
+ </a>''')
1857
+ nsmap = {'xx': 'X'}
1858
+ self.assertEqual(len(root.findall(".//xx:b", namespaces=nsmap)), 2)
1859
+ self.assertEqual(len(root.findall(".//b", namespaces=nsmap)), 2)
1860
+ nsmap = {'xx': 'Y'}
1861
+ self.assertEqual(len(root.findall(".//xx:b", namespaces=nsmap)), 1)
1862
+ self.assertEqual(len(root.findall(".//b", namespaces=nsmap)), 2)
1863
+
1864
+ def test_bad_find(self):
1865
+ e = ET.XML(SAMPLE_XML)
1866
+ with self.assertRaisesRegex(SyntaxError, 'cannot use absolute path'):
1867
+ e.findall('/tag')
1868
+
1869
+ def test_find_through_ElementTree(self):
1870
+ e = ET.XML(SAMPLE_XML)
1871
+ self.assertEqual(ET.ElementTree(e).find('tag').tag, 'tag')
1872
+ self.assertEqual(ET.ElementTree(e).findtext('tag'), 'text')
1873
+ self.assertEqual(summarize_list(ET.ElementTree(e).findall('tag')),
1874
+ ['tag'] * 2)
1875
+ # this produces a warning
1876
+ self.assertEqual(summarize_list(ET.ElementTree(e).findall('//tag')),
1877
+ ['tag'] * 3)
1878
+
1879
+
1880
+ class ElementIterTest(unittest.TestCase):
1881
+ def _ilist(self, elem, tag=None):
1882
+ return summarize_list(elem.iter(tag))
1883
+
1884
+ def test_basic(self):
1885
+ doc = ET.XML("<html><body>this is a <i>paragraph</i>.</body>..</html>")
1886
+ self.assertEqual(self._ilist(doc), ['html', 'body', 'i'])
1887
+ self.assertEqual(self._ilist(doc.find('body')), ['body', 'i'])
1888
+ self.assertEqual(next(doc.iter()).tag, 'html')
1889
+ self.assertEqual(''.join(doc.itertext()), 'this is a paragraph...')
1890
+ self.assertEqual(''.join(doc.find('body').itertext()),
1891
+ 'this is a paragraph.')
1892
+ self.assertEqual(next(doc.itertext()), 'this is a ')
1893
+
1894
+ # iterparse should return an iterator
1895
+ sourcefile = serialize(doc, to_string=False)
1896
+ self.assertEqual(next(ET.iterparse(sourcefile))[0], 'end')
1897
+
1898
+ # With an explitit parser too (issue #9708)
1899
+ sourcefile = serialize(doc, to_string=False)
1900
+ parser = ET.XMLParser(target=ET.TreeBuilder())
1901
+ self.assertEqual(next(ET.iterparse(sourcefile, parser=parser))[0],
1902
+ 'end')
1903
+
1904
+ tree = ET.ElementTree(None)
1905
+ self.assertRaises(AttributeError, tree.iter)
1906
+
1907
+ # Issue #16913
1908
+ doc = ET.XML("<root>a&amp;<sub>b&amp;</sub>c&amp;</root>")
1909
+ self.assertEqual(''.join(doc.itertext()), 'a&b&c&')
1910
+
1911
+ def test_corners(self):
1912
+ # single root, no subelements
1913
+ a = ET.Element('a')
1914
+ self.assertEqual(self._ilist(a), ['a'])
1915
+
1916
+ # one child
1917
+ b = ET.SubElement(a, 'b')
1918
+ self.assertEqual(self._ilist(a), ['a', 'b'])
1919
+
1920
+ # one child and one grandchild
1921
+ c = ET.SubElement(b, 'c')
1922
+ self.assertEqual(self._ilist(a), ['a', 'b', 'c'])
1923
+
1924
+ # two children, only first with grandchild
1925
+ d = ET.SubElement(a, 'd')
1926
+ self.assertEqual(self._ilist(a), ['a', 'b', 'c', 'd'])
1927
+
1928
+ # replace first child by second
1929
+ a[0] = a[1]
1930
+ del a[1]
1931
+ self.assertEqual(self._ilist(a), ['a', 'd'])
1932
+
1933
+ def test_iter_by_tag(self):
1934
+ doc = ET.XML('''
1935
+ <document>
1936
+ <house>
1937
+ <room>bedroom1</room>
1938
+ <room>bedroom2</room>
1939
+ </house>
1940
+ <shed>nothing here
1941
+ </shed>
1942
+ <house>
1943
+ <room>bedroom8</room>
1944
+ </house>
1945
+ </document>''')
1946
+
1947
+ self.assertEqual(self._ilist(doc, 'room'), ['room'] * 3)
1948
+ self.assertEqual(self._ilist(doc, 'house'), ['house'] * 2)
1949
+
1950
+ # test that iter also accepts 'tag' as a keyword arg
1951
+ self.assertEqual(
1952
+ summarize_list(doc.iter(tag='room')),
1953
+ ['room'] * 3)
1954
+
1955
+ # make sure both tag=None and tag='*' return all tags
1956
+ all_tags = ['document', 'house', 'room', 'room',
1957
+ 'shed', 'house', 'room']
1958
+ self.assertEqual(self._ilist(doc), all_tags)
1959
+ self.assertEqual(self._ilist(doc, '*'), all_tags)
1960
+
1961
+
1962
+ class TreeBuilderTest(unittest.TestCase):
1963
+ sample1 = ('<!DOCTYPE html PUBLIC'
1964
+ ' "-//W3C//DTD XHTML 1.0 Transitional//EN"'
1965
+ ' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'
1966
+ '<html>text<div>subtext</div>tail</html>')
1967
+
1968
+ sample2 = '''<toplevel>sometext</toplevel>'''
1969
+
1970
+ def _check_sample1_element(self, e):
1971
+ self.assertEqual(e.tag, 'html')
1972
+ self.assertEqual(e.text, 'text')
1973
+ self.assertEqual(e.tail, None)
1974
+ self.assertEqual(e.attrib, {})
1975
+ children = list(e)
1976
+ self.assertEqual(len(children), 1)
1977
+ child = children[0]
1978
+ self.assertEqual(child.tag, 'div')
1979
+ self.assertEqual(child.text, 'subtext')
1980
+ self.assertEqual(child.tail, 'tail')
1981
+ self.assertEqual(child.attrib, {})
1982
+
1983
+ def test_dummy_builder(self):
1984
+ class BaseDummyBuilder:
1985
+ def close(self):
1986
+ return 42
1987
+
1988
+ class DummyBuilder(BaseDummyBuilder):
1989
+ data = start = end = lambda *a: None
1990
+
1991
+ parser = ET.XMLParser(target=DummyBuilder())
1992
+ parser.feed(self.sample1)
1993
+ self.assertEqual(parser.close(), 42)
1994
+
1995
+ parser = ET.XMLParser(target=BaseDummyBuilder())
1996
+ parser.feed(self.sample1)
1997
+ self.assertEqual(parser.close(), 42)
1998
+
1999
+ parser = ET.XMLParser(target=object())
2000
+ parser.feed(self.sample1)
2001
+ self.assertIsNone(parser.close())
2002
+
2003
+ def test_treebuilder_elementfactory_none(self):
2004
+ parser = ET.XMLParser(target=ET.TreeBuilder(element_factory=None))
2005
+ parser.feed(self.sample1)
2006
+ e = parser.close()
2007
+ self._check_sample1_element(e)
2008
+
2009
+ def test_subclass(self):
2010
+ class MyTreeBuilder(ET.TreeBuilder):
2011
+ def foobar(self, x):
2012
+ return x * 2
2013
+
2014
+ tb = MyTreeBuilder()
2015
+ self.assertEqual(tb.foobar(10), 20)
2016
+
2017
+ parser = ET.XMLParser(target=tb)
2018
+ parser.feed(self.sample1)
2019
+
2020
+ e = parser.close()
2021
+ self._check_sample1_element(e)
2022
+
2023
+ def test_element_factory(self):
2024
+ lst = []
2025
+ def myfactory(tag, attrib):
2026
+ nonlocal lst
2027
+ lst.append(tag)
2028
+ return ET.Element(tag, attrib)
2029
+
2030
+ tb = ET.TreeBuilder(element_factory=myfactory)
2031
+ parser = ET.XMLParser(target=tb)
2032
+ parser.feed(self.sample2)
2033
+ parser.close()
2034
+
2035
+ self.assertEqual(lst, ['toplevel'])
2036
+
2037
+ def _check_element_factory_class(self, cls):
2038
+ tb = ET.TreeBuilder(element_factory=cls)
2039
+
2040
+ parser = ET.XMLParser(target=tb)
2041
+ parser.feed(self.sample1)
2042
+ e = parser.close()
2043
+ self.assertIsInstance(e, cls)
2044
+ self._check_sample1_element(e)
2045
+
2046
+ def test_element_factory_subclass(self):
2047
+ class MyElement(ET.Element):
2048
+ pass
2049
+ self._check_element_factory_class(MyElement)
2050
+
2051
+ def test_element_factory_pure_python_subclass(self):
2052
+ # Mimick SimpleTAL's behaviour (issue #16089): both versions of
2053
+ # TreeBuilder should be able to cope with a subclass of the
2054
+ # pure Python Element class.
2055
+ base = ET._Element_Py
2056
+ # Not from a C extension
2057
+ self.assertEqual(base.__module__, 'xml.etree.ElementTree')
2058
+ # Force some multiple inheritance with a C class to make things
2059
+ # more interesting.
2060
+ class MyElement(base, ValueError):
2061
+ pass
2062
+ self._check_element_factory_class(MyElement)
2063
+
2064
+ def test_doctype(self):
2065
+ class DoctypeParser:
2066
+ _doctype = None
2067
+
2068
+ def doctype(self, name, pubid, system):
2069
+ self._doctype = (name, pubid, system)
2070
+
2071
+ def close(self):
2072
+ return self._doctype
2073
+
2074
+ parser = ET.XMLParser(target=DoctypeParser())
2075
+ parser.feed(self.sample1)
2076
+
2077
+ self.assertEqual(parser.close(),
2078
+ ('html', '-//W3C//DTD XHTML 1.0 Transitional//EN',
2079
+ 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'))
2080
+
2081
+
2082
+ class XMLParserTest(unittest.TestCase):
2083
+ sample1 = b'<file><line>22</line></file>'
2084
+ sample2 = (b'<!DOCTYPE html PUBLIC'
2085
+ b' "-//W3C//DTD XHTML 1.0 Transitional//EN"'
2086
+ b' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'
2087
+ b'<html>text</html>')
2088
+ sample3 = ('<?xml version="1.0" encoding="iso-8859-1"?>\n'
2089
+ '<money value="$\xa3\u20ac\U0001017b">$\xa3\u20ac\U0001017b</money>')
2090
+
2091
+ def _check_sample_element(self, e):
2092
+ self.assertEqual(e.tag, 'file')
2093
+ self.assertEqual(e[0].tag, 'line')
2094
+ self.assertEqual(e[0].text, '22')
2095
+
2096
+ def test_constructor_args(self):
2097
+ # Positional args. The first (html) is not supported, but should be
2098
+ # nevertheless correctly accepted.
2099
+ parser = ET.XMLParser(None, ET.TreeBuilder(), 'utf-8')
2100
+ parser.feed(self.sample1)
2101
+ self._check_sample_element(parser.close())
2102
+
2103
+ # Now as keyword args.
2104
+ parser2 = ET.XMLParser(encoding='utf-8',
2105
+ html=[{}],
2106
+ target=ET.TreeBuilder())
2107
+ parser2.feed(self.sample1)
2108
+ self._check_sample_element(parser2.close())
2109
+
2110
+ def test_subclass(self):
2111
+ class MyParser(ET.XMLParser):
2112
+ pass
2113
+ parser = MyParser()
2114
+ parser.feed(self.sample1)
2115
+ self._check_sample_element(parser.close())
2116
+
2117
+ def test_subclass_doctype(self):
2118
+ _doctype = None
2119
+ class MyParserWithDoctype(ET.XMLParser):
2120
+ def doctype(self, name, pubid, system):
2121
+ nonlocal _doctype
2122
+ _doctype = (name, pubid, system)
2123
+
2124
+ parser = MyParserWithDoctype()
2125
+ with self.assertWarns(DeprecationWarning):
2126
+ parser.feed(self.sample2)
2127
+ parser.close()
2128
+ self.assertEqual(_doctype,
2129
+ ('html', '-//W3C//DTD XHTML 1.0 Transitional//EN',
2130
+ 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'))
2131
+
2132
+ def test_parse_string(self):
2133
+ parser = ET.XMLParser(target=ET.TreeBuilder())
2134
+ parser.feed(self.sample3)
2135
+ e = parser.close()
2136
+ self.assertEqual(e.tag, 'money')
2137
+ self.assertEqual(e.attrib['value'], '$\xa3\u20ac\U0001017b')
2138
+ self.assertEqual(e.text, '$\xa3\u20ac\U0001017b')
2139
+
2140
+
2141
+ class NamespaceParseTest(unittest.TestCase):
2142
+ def test_find_with_namespace(self):
2143
+ nsmap = {'h': 'hello', 'f': 'foo'}
2144
+ doc = ET.fromstring(SAMPLE_XML_NS_ELEMS)
2145
+
2146
+ self.assertEqual(len(doc.findall('{hello}table', nsmap)), 1)
2147
+ self.assertEqual(len(doc.findall('.//{hello}td', nsmap)), 2)
2148
+ self.assertEqual(len(doc.findall('.//{foo}name', nsmap)), 1)
2149
+
2150
+
2151
+ class ElementSlicingTest(unittest.TestCase):
2152
+ def _elem_tags(self, elemlist):
2153
+ return [e.tag for e in elemlist]
2154
+
2155
+ def _subelem_tags(self, elem):
2156
+ return self._elem_tags(list(elem))
2157
+
2158
+ def _make_elem_with_children(self, numchildren):
2159
+ """Create an Element with a tag 'a', with the given amount of children
2160
+ named 'a0', 'a1' ... and so on.
2161
+
2162
+ """
2163
+ e = ET.Element('a')
2164
+ for i in range(numchildren):
2165
+ ET.SubElement(e, 'a%s' % i)
2166
+ return e
2167
+
2168
+ def test_getslice_single_index(self):
2169
+ e = self._make_elem_with_children(10)
2170
+
2171
+ self.assertEqual(e[1].tag, 'a1')
2172
+ self.assertEqual(e[-2].tag, 'a8')
2173
+
2174
+ self.assertRaises(IndexError, lambda: e[12])
2175
+
2176
+ def test_getslice_range(self):
2177
+ e = self._make_elem_with_children(6)
2178
+
2179
+ self.assertEqual(self._elem_tags(e[3:]), ['a3', 'a4', 'a5'])
2180
+ self.assertEqual(self._elem_tags(e[3:6]), ['a3', 'a4', 'a5'])
2181
+ self.assertEqual(self._elem_tags(e[3:16]), ['a3', 'a4', 'a5'])
2182
+ self.assertEqual(self._elem_tags(e[3:5]), ['a3', 'a4'])
2183
+ self.assertEqual(self._elem_tags(e[3:-1]), ['a3', 'a4'])
2184
+ self.assertEqual(self._elem_tags(e[:2]), ['a0', 'a1'])
2185
+
2186
+ def test_getslice_steps(self):
2187
+ e = self._make_elem_with_children(10)
2188
+
2189
+ self.assertEqual(self._elem_tags(e[8:10:1]), ['a8', 'a9'])
2190
+ self.assertEqual(self._elem_tags(e[::3]), ['a0', 'a3', 'a6', 'a9'])
2191
+ self.assertEqual(self._elem_tags(e[::8]), ['a0', 'a8'])
2192
+ self.assertEqual(self._elem_tags(e[1::8]), ['a1', 'a9'])
2193
+
2194
+ def test_getslice_negative_steps(self):
2195
+ e = self._make_elem_with_children(4)
2196
+
2197
+ self.assertEqual(self._elem_tags(e[::-1]), ['a3', 'a2', 'a1', 'a0'])
2198
+ self.assertEqual(self._elem_tags(e[::-2]), ['a3', 'a1'])
2199
+
2200
+ def test_delslice(self):
2201
+ e = self._make_elem_with_children(4)
2202
+ del e[0:2]
2203
+ self.assertEqual(self._subelem_tags(e), ['a2', 'a3'])
2204
+
2205
+ e = self._make_elem_with_children(4)
2206
+ del e[0:]
2207
+ self.assertEqual(self._subelem_tags(e), [])
2208
+
2209
+ e = self._make_elem_with_children(4)
2210
+ del e[::-1]
2211
+ self.assertEqual(self._subelem_tags(e), [])
2212
+
2213
+ e = self._make_elem_with_children(4)
2214
+ del e[::-2]
2215
+ self.assertEqual(self._subelem_tags(e), ['a0', 'a2'])
2216
+
2217
+ e = self._make_elem_with_children(4)
2218
+ del e[1::2]
2219
+ self.assertEqual(self._subelem_tags(e), ['a0', 'a2'])
2220
+
2221
+ e = self._make_elem_with_children(2)
2222
+ del e[::2]
2223
+ self.assertEqual(self._subelem_tags(e), ['a1'])
2224
+
2225
+
2226
+ class IOTest(unittest.TestCase):
2227
+ def tearDown(self):
2228
+ support.unlink(TESTFN)
2229
+
2230
+ def test_encoding(self):
2231
+ # Test encoding issues.
2232
+ elem = ET.Element("tag")
2233
+ elem.text = "abc"
2234
+ self.assertEqual(serialize(elem), '<tag>abc</tag>')
2235
+ self.assertEqual(serialize(elem, encoding="utf-8"),
2236
+ b'<tag>abc</tag>')
2237
+ self.assertEqual(serialize(elem, encoding="us-ascii"),
2238
+ b'<tag>abc</tag>')
2239
+ for enc in ("iso-8859-1", "utf-16", "utf-32"):
2240
+ self.assertEqual(serialize(elem, encoding=enc),
2241
+ ("<?xml version='1.0' encoding='%s'?>\n"
2242
+ "<tag>abc</tag>" % enc).encode(enc))
2243
+
2244
+ elem = ET.Element("tag")
2245
+ elem.text = "<&\"\'>"
2246
+ self.assertEqual(serialize(elem), '<tag>&lt;&amp;"\'&gt;</tag>')
2247
+ self.assertEqual(serialize(elem, encoding="utf-8"),
2248
+ b'<tag>&lt;&amp;"\'&gt;</tag>')
2249
+ self.assertEqual(serialize(elem, encoding="us-ascii"),
2250
+ b'<tag>&lt;&amp;"\'&gt;</tag>')
2251
+ for enc in ("iso-8859-1", "utf-16", "utf-32"):
2252
+ self.assertEqual(serialize(elem, encoding=enc),
2253
+ ("<?xml version='1.0' encoding='%s'?>\n"
2254
+ "<tag>&lt;&amp;\"'&gt;</tag>" % enc).encode(enc))
2255
+
2256
+ elem = ET.Element("tag")
2257
+ elem.attrib["key"] = "<&\"\'>"
2258
+ self.assertEqual(serialize(elem), '<tag key="&lt;&amp;&quot;\'&gt;" />')
2259
+ self.assertEqual(serialize(elem, encoding="utf-8"),
2260
+ b'<tag key="&lt;&amp;&quot;\'&gt;" />')
2261
+ self.assertEqual(serialize(elem, encoding="us-ascii"),
2262
+ b'<tag key="&lt;&amp;&quot;\'&gt;" />')
2263
+ for enc in ("iso-8859-1", "utf-16", "utf-32"):
2264
+ self.assertEqual(serialize(elem, encoding=enc),
2265
+ ("<?xml version='1.0' encoding='%s'?>\n"
2266
+ "<tag key=\"&lt;&amp;&quot;'&gt;\" />" % enc).encode(enc))
2267
+
2268
+ elem = ET.Element("tag")
2269
+ elem.text = '\xe5\xf6\xf6<>'
2270
+ self.assertEqual(serialize(elem), '<tag>\xe5\xf6\xf6&lt;&gt;</tag>')
2271
+ self.assertEqual(serialize(elem, encoding="utf-8"),
2272
+ b'<tag>\xc3\xa5\xc3\xb6\xc3\xb6&lt;&gt;</tag>')
2273
+ self.assertEqual(serialize(elem, encoding="us-ascii"),
2274
+ b'<tag>&#229;&#246;&#246;&lt;&gt;</tag>')
2275
+ for enc in ("iso-8859-1", "utf-16", "utf-32"):
2276
+ self.assertEqual(serialize(elem, encoding=enc),
2277
+ ("<?xml version='1.0' encoding='%s'?>\n"
2278
+ "<tag>åöö&lt;&gt;</tag>" % enc).encode(enc))
2279
+
2280
+ elem = ET.Element("tag")
2281
+ elem.attrib["key"] = '\xe5\xf6\xf6<>'
2282
+ self.assertEqual(serialize(elem), '<tag key="\xe5\xf6\xf6&lt;&gt;" />')
2283
+ self.assertEqual(serialize(elem, encoding="utf-8"),
2284
+ b'<tag key="\xc3\xa5\xc3\xb6\xc3\xb6&lt;&gt;" />')
2285
+ self.assertEqual(serialize(elem, encoding="us-ascii"),
2286
+ b'<tag key="&#229;&#246;&#246;&lt;&gt;" />')
2287
+ for enc in ("iso-8859-1", "utf-16", "utf-16le", "utf-16be", "utf-32"):
2288
+ self.assertEqual(serialize(elem, encoding=enc),
2289
+ ("<?xml version='1.0' encoding='%s'?>\n"
2290
+ "<tag key=\"åöö&lt;&gt;\" />" % enc).encode(enc))
2291
+
2292
+ def test_write_to_filename(self):
2293
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2294
+ tree.write(TESTFN)
2295
+ with open(TESTFN, 'rb') as f:
2296
+ self.assertEqual(f.read(), b'''<site />''')
2297
+
2298
+ def test_write_to_text_file(self):
2299
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2300
+ with open(TESTFN, 'w', encoding='utf-8') as f:
2301
+ tree.write(f, encoding='unicode')
2302
+ self.assertFalse(f.closed)
2303
+ with open(TESTFN, 'rb') as f:
2304
+ self.assertEqual(f.read(), b'''<site />''')
2305
+
2306
+ def test_write_to_binary_file(self):
2307
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2308
+ with open(TESTFN, 'wb') as f:
2309
+ tree.write(f)
2310
+ self.assertFalse(f.closed)
2311
+ with open(TESTFN, 'rb') as f:
2312
+ self.assertEqual(f.read(), b'''<site />''')
2313
+
2314
+ def test_write_to_binary_file_with_bom(self):
2315
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2316
+ # test BOM writing to buffered file
2317
+ with open(TESTFN, 'wb') as f:
2318
+ tree.write(f, encoding='utf-16')
2319
+ self.assertFalse(f.closed)
2320
+ with open(TESTFN, 'rb') as f:
2321
+ self.assertEqual(f.read(),
2322
+ '''<?xml version='1.0' encoding='utf-16'?>\n'''
2323
+ '''<site />'''.encode("utf-16"))
2324
+ # test BOM writing to non-buffered file
2325
+ with open(TESTFN, 'wb', buffering=0) as f:
2326
+ tree.write(f, encoding='utf-16')
2327
+ self.assertFalse(f.closed)
2328
+ with open(TESTFN, 'rb') as f:
2329
+ self.assertEqual(f.read(),
2330
+ '''<?xml version='1.0' encoding='utf-16'?>\n'''
2331
+ '''<site />'''.encode("utf-16"))
2332
+
2333
+ def test_read_from_stringio(self):
2334
+ tree = ET.ElementTree()
2335
+ stream = io.StringIO('''<?xml version="1.0"?><site></site>''')
2336
+ tree.parse(stream)
2337
+ self.assertEqual(tree.getroot().tag, 'site')
2338
+
2339
+ def test_write_to_stringio(self):
2340
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2341
+ stream = io.StringIO()
2342
+ tree.write(stream, encoding='unicode')
2343
+ self.assertEqual(stream.getvalue(), '''<site />''')
2344
+
2345
+ def test_read_from_bytesio(self):
2346
+ tree = ET.ElementTree()
2347
+ raw = io.BytesIO(b'''<?xml version="1.0"?><site></site>''')
2348
+ tree.parse(raw)
2349
+ self.assertEqual(tree.getroot().tag, 'site')
2350
+
2351
+ def test_write_to_bytesio(self):
2352
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2353
+ raw = io.BytesIO()
2354
+ tree.write(raw)
2355
+ self.assertEqual(raw.getvalue(), b'''<site />''')
2356
+
2357
+ class dummy:
2358
+ pass
2359
+
2360
+ def test_read_from_user_text_reader(self):
2361
+ stream = io.StringIO('''<?xml version="1.0"?><site></site>''')
2362
+ reader = self.dummy()
2363
+ reader.read = stream.read
2364
+ tree = ET.ElementTree()
2365
+ tree.parse(reader)
2366
+ self.assertEqual(tree.getroot().tag, 'site')
2367
+
2368
+ def test_write_to_user_text_writer(self):
2369
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2370
+ stream = io.StringIO()
2371
+ writer = self.dummy()
2372
+ writer.write = stream.write
2373
+ tree.write(writer, encoding='unicode')
2374
+ self.assertEqual(stream.getvalue(), '''<site />''')
2375
+
2376
+ def test_read_from_user_binary_reader(self):
2377
+ raw = io.BytesIO(b'''<?xml version="1.0"?><site></site>''')
2378
+ reader = self.dummy()
2379
+ reader.read = raw.read
2380
+ tree = ET.ElementTree()
2381
+ tree.parse(reader)
2382
+ self.assertEqual(tree.getroot().tag, 'site')
2383
+ tree = ET.ElementTree()
2384
+
2385
+ def test_write_to_user_binary_writer(self):
2386
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2387
+ raw = io.BytesIO()
2388
+ writer = self.dummy()
2389
+ writer.write = raw.write
2390
+ tree.write(writer)
2391
+ self.assertEqual(raw.getvalue(), b'''<site />''')
2392
+
2393
+ def test_write_to_user_binary_writer_with_bom(self):
2394
+ tree = ET.ElementTree(ET.XML('''<site />'''))
2395
+ raw = io.BytesIO()
2396
+ writer = self.dummy()
2397
+ writer.write = raw.write
2398
+ writer.seekable = lambda: True
2399
+ writer.tell = raw.tell
2400
+ tree.write(writer, encoding="utf-16")
2401
+ self.assertEqual(raw.getvalue(),
2402
+ '''<?xml version='1.0' encoding='utf-16'?>\n'''
2403
+ '''<site />'''.encode("utf-16"))
2404
+
2405
+ def test_tostringlist_invariant(self):
2406
+ root = ET.fromstring('<tag>foo</tag>')
2407
+ self.assertEqual(
2408
+ ET.tostring(root, 'unicode'),
2409
+ ''.join(ET.tostringlist(root, 'unicode')))
2410
+ self.assertEqual(
2411
+ ET.tostring(root, 'utf-16'),
2412
+ b''.join(ET.tostringlist(root, 'utf-16')))
2413
+
2414
+ def test_short_empty_elements(self):
2415
+ root = ET.fromstring('<tag>a<x />b<y></y>c</tag>')
2416
+ self.assertEqual(
2417
+ ET.tostring(root, 'unicode'),
2418
+ '<tag>a<x />b<y />c</tag>')
2419
+ self.assertEqual(
2420
+ ET.tostring(root, 'unicode', short_empty_elements=True),
2421
+ '<tag>a<x />b<y />c</tag>')
2422
+ self.assertEqual(
2423
+ ET.tostring(root, 'unicode', short_empty_elements=False),
2424
+ '<tag>a<x></x>b<y></y>c</tag>')
2425
+
2426
+
2427
+ class ParseErrorTest(unittest.TestCase):
2428
+ def test_subclass(self):
2429
+ self.assertIsInstance(ET.ParseError(), SyntaxError)
2430
+
2431
+ def _get_error(self, s):
2432
+ try:
2433
+ ET.fromstring(s)
2434
+ except ET.ParseError as e:
2435
+ return e
2436
+
2437
+ def test_error_position(self):
2438
+ self.assertEqual(self._get_error('foo').position, (1, 0))
2439
+ self.assertEqual(self._get_error('<tag>&foo;</tag>').position, (1, 5))
2440
+ self.assertEqual(self._get_error('foobar<').position, (1, 6))
2441
+
2442
+ def test_error_code(self):
2443
+ import xml.parsers.expat.errors as ERRORS
2444
+ self.assertEqual(self._get_error('foo').code,
2445
+ ERRORS.codes[ERRORS.XML_ERROR_SYNTAX])
2446
+
2447
+
2448
+ class KeywordArgsTest(unittest.TestCase):
2449
+ # Test various issues with keyword arguments passed to ET.Element
2450
+ # constructor and methods
2451
+ def test_issue14818(self):
2452
+ x = ET.XML("<a>foo</a>")
2453
+ self.assertEqual(x.find('a', None),
2454
+ x.find(path='a', namespaces=None))
2455
+ self.assertEqual(x.findtext('a', None, None),
2456
+ x.findtext(path='a', default=None, namespaces=None))
2457
+ self.assertEqual(x.findall('a', None),
2458
+ x.findall(path='a', namespaces=None))
2459
+ self.assertEqual(list(x.iterfind('a', None)),
2460
+ list(x.iterfind(path='a', namespaces=None)))
2461
+
2462
+ self.assertEqual(ET.Element('a').attrib, {})
2463
+ elements = [
2464
+ ET.Element('a', dict(href="#", id="foo")),
2465
+ ET.Element('a', attrib=dict(href="#", id="foo")),
2466
+ ET.Element('a', dict(href="#"), id="foo"),
2467
+ ET.Element('a', href="#", id="foo"),
2468
+ ET.Element('a', dict(href="#", id="foo"), href="#", id="foo"),
2469
+ ]
2470
+ for e in elements:
2471
+ self.assertEqual(e.tag, 'a')
2472
+ self.assertEqual(e.attrib, dict(href="#", id="foo"))
2473
+
2474
+ e2 = ET.SubElement(elements[0], 'foobar', attrib={'key1': 'value1'})
2475
+ self.assertEqual(e2.attrib['key1'], 'value1')
2476
+
2477
+ with self.assertRaisesRegex(TypeError, 'must be dict, not str'):
2478
+ ET.Element('a', "I'm not a dict")
2479
+ with self.assertRaisesRegex(TypeError, 'must be dict, not str'):
2480
+ ET.Element('a', attrib="I'm not a dict")
2481
+
2482
+ # --------------------------------------------------------------------
2483
+
2484
+ class NoAcceleratorTest(unittest.TestCase):
2485
+ def setUp(self):
2486
+ if not pyET:
2487
+ raise unittest.SkipTest('only for the Python version')
2488
+
2489
+ # Test that the C accelerator was not imported for pyET
2490
+ def test_correct_import_pyET(self):
2491
+ # The type of methods defined in Python code is types.FunctionType,
2492
+ # while the type of methods defined inside _elementtree is
2493
+ # <class 'wrapper_descriptor'>
2494
+ self.assertIsInstance(pyET.Element.__init__, types.FunctionType)
2495
+ self.assertIsInstance(pyET.XMLParser.__init__, types.FunctionType)
2496
+
2497
+ # --------------------------------------------------------------------
2498
+
2499
+
2500
+ class CleanContext(object):
2501
+ """Provide default namespace mapping and path cache."""
2502
+ checkwarnings = None
2503
+
2504
+ def __init__(self, quiet=False):
2505
+ if sys.flags.optimize >= 2:
2506
+ # under -OO, doctests cannot be run and therefore not all warnings
2507
+ # will be emitted
2508
+ quiet = True
2509
+ deprecations = (
2510
+ # Search behaviour is broken if search path starts with "/".
2511
+ ("This search is broken in 1.3 and earlier, and will be fixed "
2512
+ "in a future version. If you rely on the current behaviour, "
2513
+ "change it to '.+'", FutureWarning),
2514
+ # Element.getchildren() and Element.getiterator() are deprecated.
2515
+ ("This method will be removed in future versions. "
2516
+ "Use .+ instead.", DeprecationWarning),
2517
+ ("This method will be removed in future versions. "
2518
+ "Use .+ instead.", PendingDeprecationWarning))
2519
+ self.checkwarnings = support.check_warnings(*deprecations, quiet=quiet)
2520
+
2521
+ def __enter__(self):
2522
+ from xml.etree import ElementPath
2523
+ self._nsmap = ET.register_namespace._namespace_map
2524
+ # Copy the default namespace mapping
2525
+ self._nsmap_copy = self._nsmap.copy()
2526
+ # Copy the path cache (should be empty)
2527
+ self._path_cache = ElementPath._cache
2528
+ ElementPath._cache = self._path_cache.copy()
2529
+ self.checkwarnings.__enter__()
2530
+
2531
+ def __exit__(self, *args):
2532
+ from xml.etree import ElementPath
2533
+ # Restore mapping and path cache
2534
+ self._nsmap.clear()
2535
+ self._nsmap.update(self._nsmap_copy)
2536
+ ElementPath._cache = self._path_cache
2537
+ self.checkwarnings.__exit__(*args)
2538
+
2539
+
2540
+ def test_main(module=None):
2541
+ # When invoked without a module, runs the Python ET tests by loading pyET.
2542
+ # Otherwise, uses the given module as the ET.
2543
+ global pyET
2544
+ pyET = import_fresh_module('xml.etree.ElementTree',
2545
+ blocked=['_elementtree'])
2546
+ if module is None:
2547
+ module = pyET
2548
+
2549
+ global ET
2550
+ ET = module
2551
+
2552
+ test_classes = [
2553
+ ModuleTest,
2554
+ ElementSlicingTest,
2555
+ BasicElementTest,
2556
+ ElementTreeTest,
2557
+ IOTest,
2558
+ ParseErrorTest,
2559
+ XIncludeTest,
2560
+ ElementTreeTypeTest,
2561
+ ElementFindTest,
2562
+ ElementIterTest,
2563
+ TreeBuilderTest,
2564
+ XMLParserTest,
2565
+ XMLPullParserTest,
2566
+ BugsTest,
2567
+ ]
2568
+
2569
+ # These tests will only run for the pure-Python version that doesn't import
2570
+ # _elementtree. We can't use skipUnless here, because pyET is filled in only
2571
+ # after the module is loaded.
2572
+ if pyET is not ET:
2573
+ test_classes.extend([
2574
+ NoAcceleratorTest,
2575
+ ])
2576
+
2577
+ try:
2578
+ # XXX the C module should give the same warnings as the Python module
2579
+ with CleanContext(quiet=(pyET is not ET)):
2580
+ support.run_unittest(*test_classes)
2581
+ finally:
2582
+ # don't interfere with subsequent tests
2583
+ ET = pyET = None
2584
+
2585
+
2586
+ if __name__ == '__main__':
2587
+ test_main()