Commit Graph

17208 Commits

Author SHA1 Message Date
R David Murray 65171b28e7 #18044: Fix parsing of encoded words of the form =?utf8?q?=XX...?=
The problem was I was only checking for decimal digits after the third '?',
not for *hex* digits :(.

This changeset also fixes a couple of comment typos, deletes an unused
function relating to encoded word parsing, and removed an invalid
'if' test from the folding function that was revealed by the tests
written to validate this issue.
2013-07-11 15:52:57 -04:00
Serhiy Storchaka f9e6672ae8 Issue #17872: Fix a segfault in marshal.load() when input stream returns
more bytes than requested.
2013-07-11 22:28:18 +03:00
Serhiy Storchaka 3641a74e1c Issue #17872: Fix a segfault in marshal.load() when input stream returns
more bytes than requested.
2013-07-11 22:20:47 +03:00
Serhiy Storchaka 50ae3f680b Issue #18101: Tcl.split() now process strings nested in a tuple as it
do with byte strings.

Added tests for Tcl.split() and Tcl.splitline().
2013-07-11 20:36:00 +03:00
Serhiy Storchaka 275d5fdbe4 Issue #18101: Tcl.split() now process strings nested in a tuple as it
do with byte strings.

Added tests for Tcl.split() and Tcl.splitline().
2013-07-11 20:34:47 +03:00
Serhiy Storchaka e3ed4edb94 Issue #18338: `python --version` now prints version string to stdout, and
not to stderr.  Patch by Berker Peksag and Michael Dickens.
2013-07-11 20:01:17 +03:00
R David Murray e173d01231 Merge #17987: properly document support.captured_xxx. 2013-07-11 12:29:31 -04:00
R David Murray 5a33f81348 #17987: properly document support.captured_xxx.
Patch by Dmi Baranov.
2013-07-11 12:28:40 -04:00
R David Murray 16dbbae298 #18116: getpass no longer always falls back to stdin.
Also fixes a resource warning that occurred when the fallback is taken.

Patch by Serhiy Storchaka.

(We couldn't figure out how to write tests for this.)
2013-07-10 17:02:24 -04:00
Charles-François Natali 19361a2046 Issue #18308: don't take the scope ID into account when comparing IPv6
addresses.
2013-07-09 19:16:32 +02:00
Charles-François Natali 37114bb548 Issue #18308: don't take the scope ID into account when comparing IPv6
addresses.
2013-07-09 19:15:43 +02:00
Raymond Hettinger d9c116ca40 Add a spacing saving heuristic to deque's extend methods 2013-07-09 00:13:21 -07:00
Ezio Melotti bf5af5d5bc Merge str.center tests from 3.3. 2013-07-08 17:49:59 +02:00
Ezio Melotti f84e01df31 Add a couple of tests for str.center with non-ASCII chars. 2013-07-08 17:48:29 +02:00
Ezio Melotti 0cb2aafb36 #18106: refactor tests to use subtests and proper assert methods. Patch by Vajrasky Kok. 2013-07-07 13:37:20 +02:00
Ezio Melotti 9f96789cdc #17198: merge with 3.3. 2013-07-07 13:16:05 +02:00
Ezio Melotti b08495bbcf #17198: Fix a NameError in the dbm module. Patch by Valentina Mukhamedzhanova. 2013-07-07 13:15:08 +02:00
Florent Xicluna 74a146d3ac Merge #18013: Fix cgi.FieldStorage to parse the W3C sample form. 2013-07-07 12:46:28 +02:00
Florent Xicluna 331c3fd874 Issue #18013: Fix cgi.FieldStorage to parse the W3C sample form. 2013-07-07 12:44:28 +02:00
Brett Cannon 7e5d55705c merge for issue #18351. 2013-07-06 18:04:41 -04:00
Brett Cannon a53cca3fea Issue #18351: Fix various issues with
importlib._bootstrap._get_sourcefile().

Thanks to its only use by the C API, it was never properly tested
until now.

Thanks to Neal Norwitz for discovering the bug and Madison May for the patch.
2013-07-06 17:56:43 -04:00
Ezio Melotti e0a39de647 #18380: merge with 3.3. 2013-07-06 17:17:45 +02:00
Ezio Melotti 2a99d5df63 #18380: pass regex flags to the right argument. Patch by Valentina Mukhamedzhanova. 2013-07-06 17:16:04 +02:00
Florent Xicluna c2464bf5c6 test_ftplib: silence a BytesWarning when checking TypeError 2013-07-06 15:08:29 +02:00
Florent Xicluna 5f3fef37f6 test_ftplib: silence a BytesWarning when checking TypeError 2013-07-06 15:08:21 +02:00
Florent Xicluna 8624ed502f Issue #18375: merge with 3.3 2013-07-06 12:27:50 +02:00
Florent Xicluna d9e7c86d7e Issue #18375: Assume --randomize when --randseed is used for running the testsuite. 2013-07-06 12:25:52 +02:00
Raymond Hettinger de68e0cf0e Speed-up deque indexing by changing the deque block length to a power of two.
The division and modulo calculation in deque_item() can be compiled
to fast bitwise operations when the BLOCKLEN is a power of two.

Timing before:

 ~/cpython $ py -m timeit -r7 -s 'from collections import deque' -s 'd=deque(range(10))' 'd[5]'
10000000 loops, best of 7: 0.0627 usec per loop

Timing after:

~/cpython $ py -m timeit -r7 -s 'from collections import deque' -s 'd=deque(range(10))' 'd[5]'
10000000 loops, best of 7: 0.0581 usec per loop
2013-07-05 18:05:29 -10:00
Christian Heimes 6597aa16b6 Issue #18347: ElementTree's html serializer now preserves the case of closing tags. 2013-07-05 01:40:52 +02:00
Christian Heimes 54ad7e39df Issue #18347: ElementTree's html serializer now preserves the case of closing tags. 2013-07-05 01:39:49 +02:00
Brett Cannon 260fbe80c5 Issue #15767: Excise the remaining instances of ModuleNotFoundError 2013-07-04 18:16:15 -04:00
Brett Cannon 3dfd23245b Remove dead code in test_exceptions. 2013-07-04 18:04:20 -04:00
Brett Cannon fc4b5b9a42 Move test_import over to unittest.main(). 2013-07-04 18:03:57 -04:00
Brett Cannon 679ecb565b Issue #15767: back out 8a0ed9f63c6e, finishing the removal of
ModuleNotFoundError.
2013-07-04 17:51:50 -04:00
Brett Cannon 45091c0a0c Issue #15767: Back out 8d28d44f3a9a related to ModuleNotFoundError. 2013-07-04 17:44:08 -04:00
Antoine Pitrou 0cb1e9ab97 Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé. 2013-07-04 21:05:30 +02:00
Antoine Pitrou be9c841494 Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé. 2013-07-04 21:03:10 +02:00
Victor Stinner 7e71c5672c (Merge 3.3) test_time.test_monotonic(): use a longer sleep to try to make the test more reliable 2013-07-03 23:07:59 +02:00
Victor Stinner a9c99a6119 test_time.test_monotonic(): use a longer sleep to try to make the test more reliable 2013-07-03 23:07:37 +02:00
Victor Stinner 647d1e1acd (Merge 3.3) test_faulthandler: skip test_read_null() on AIX
AIX maps the first page of memory at address zero as valid, read-only.  Reading
NULL is not a fault on AIX. This is utilized by IBM compiler optimizations.
One speculatively can indirect through a pointer which may be null without
first testing if null and defer the test before using the value.
2013-07-03 22:35:39 +02:00
Victor Stinner 330426cfe2 test_faulthandler: skip test_read_null() on AIX
AIX maps the first page of memory at address zero as valid, read-only.  Reading
NULL is not a fault on AIX. This is utilized by IBM compiler optimizations.
One speculatively can indirect through a pointer which may be null without
first testing if null and defer the test before using the value.
2013-07-03 22:29:42 +02:00
Christian Heimes 3126a3d156 Issue #18339: use with self.assertRaises() to make test case more readable 2013-07-01 23:00:22 +02:00
Christian Heimes 2178248858 Issue #18339: use with self.assertRaises() to make test case more readable 2013-07-01 23:00:13 +02:00
Richard Oudkerk 626032ac54 Issue #17097: Merge. 2013-07-01 19:10:39 +01:00
Richard Oudkerk cca8c53d6a Issue #17097: Make multiprocessing ignore EINTR. 2013-07-01 18:59:26 +01:00
Łukasz Langa 7c1457bed2 Merge with current default 2013-07-01 16:03:17 +02:00
Łukasz Langa 3720c77e30 Issue #18244: Adopt C3-based linearization in functools.singledispatch for improved ABC support 2013-07-01 16:00:38 +02:00
Christian Heimes bfafab1849 Issue #18339: Negative ints keys in unpickler.memo dict no longer cause a
segfault inside the _pickle C extension.
2013-07-01 15:18:49 +02:00
Christian Heimes a24b4d260b Issue #18339: Negative ints keys in unpickler.memo dict no longer cause a
segfault inside the _pickle C extension.
2013-07-01 15:17:45 +02:00
Christian Heimes 04926aeb2f Issue 18240: The HMAC module is no longer restricted to bytes and accepts
any bytes-like object, e.g. memoryview. Original patch by Jonas Borgström.
2013-07-01 13:08:42 +02:00
Vinay Sajip 53b1c24f54 Issue #18224: Updated test. 2013-06-30 22:11:46 +01:00
Vinay Sajip ef1f777e0a Issue #18224: Updated test. 2013-06-30 22:11:10 +01:00
R David Murray c170f37d38 #18038: Use non-deprecated assert names in tests. 2013-06-30 11:46:32 -04:00
R David Murray 634e076bbe Merge #18155: Regex-escape delimiter, in case it is a regex special char. 2013-06-29 18:42:24 -04:00
R David Murray 925a322570 #18155: Regex-escape delimiter, in case it is a regex special char.
Patch by Vajrasky Kok, with slight modification to the tests by me.
2013-06-29 18:40:53 -04:00
Terry Jan Reedy 06beaba785 Merge with 3.3 2013-06-29 18:22:25 -04:00
Terry Jan Reedy e4e530e7e8 Issue #18103: Update README.txt and test_idle to describe and run gui tests. 2013-06-29 18:22:02 -04:00
Antoine Pitrou 3a5053b8cf Issue #18322: fix some test_stat nits. 2013-06-29 12:58:57 +02:00
Charles-François Natali 37cfb0a920 Issue #17914: Use os.cpu_count() instead of multiprocessing.cpu_count() where
applicable.
2013-06-28 19:25:45 +02:00
R David Murray c723da361a Merge #14360: make encoders.encode_quopri work. 2013-06-27 18:38:36 -04:00
R David Murray f6069f9f22 #14360: make encoders.encode_quopri work.
There were no tests for the encoders module.  encode_base64 worked
because it is the default and so got tested implicitly elsewhere, and
we use encode_7or8bit internally, so that worked, too.  I previously
fixed encode_noop, so this fix means that everythign in the encoders
module now works, hopefully correctly.  Also added an explicit test
for encode_base64.
2013-06-27 18:37:00 -04:00
Victor Stinner 5ac1b936ef test_gdb.py: ignore also "warning: Source file is more recent than executable." pattern 2013-06-25 21:54:32 +02:00
Victor Stinner ef8115e5eb Issue #17206: Fix test_cmd_line and test_faulthandler for my previous change
(test.regrtest and test.script_helper enable faulthandler module in
subprocesses).
2013-06-25 21:54:17 +02:00
Victor Stinner 383a820e0d Issue #17206: test.regrtest and test.script_helper enable faulthandler module
in subprocesses.
2013-06-25 21:24:36 +02:00
R David Murray 4af6898dbd #11390: fix test failures due to readline and windows lineneds. 2013-06-25 08:11:22 -04:00
Raymond Hettinger 4d6018fe45 Issue 18111: Add a default argument to min() and max() 2013-06-24 22:43:02 -07:00
R David Murray 5707d508e1 #11390: convert doctest CLI to argparse and add -o and -f options.
This provides a way to specify arbitrary doctest options when using
the CLI interface to process test files, just as one can when calling
testmod or testfile programmatically.
2013-06-23 14:24:13 -04:00
Serhiy Storchaka 07d22e5e4b Merge heads 2013-06-23 20:25:57 +03:00
Serhiy Storchaka e19ee8595d Merge heads 2013-06-23 20:25:40 +03:00
Serhiy Storchaka c89533f72f Issue #18184: PyUnicode_FromFormat() and PyUnicode_FromFormatV() now raise
OverflowError when an argument of %c format is out of range.
2013-06-23 20:21:16 +03:00
Serhiy Storchaka 8eeae2126c Issue #18184: PyUnicode_FromFormat() and PyUnicode_FromFormatV() now raise
OverflowError when an argument of %c format is out of range.
2013-06-23 20:12:14 +03:00
Łukasz Langa 82276964c8 Merged fix for issue #18260 from 3.3 2013-06-23 19:12:12 +02:00
Łukasz Langa f9b4eb4d04 Fixed issue #18260: configparser TypeError on source name specified as bytes 2013-06-23 19:10:25 +02:00
Christian Heimes fcce2024ea Solaris' /dev/null is a symlink. The device test now uses stat instead of lstat to compensate
for symlinks.
2013-06-23 16:11:37 +02:00
Christian Heimes 36a7e4f74a Solaris' /dev/null is a symlink. The device test now uses stat instead of lstat to compensate
for symlinks.
2013-06-23 16:10:29 +02:00
Victor Stinner 2ab07f01a4 (Merge 3.3) Issue #18137: Detect integer overflow on precision in
float.__format__() and complex.__format__().
2013-06-23 14:55:43 +02:00
Victor Stinner 2f084ecfe7 Issue #18137: Detect integer overflow on precision in float.__format__() and
complex.__format__().
2013-06-23 14:54:30 +02:00
Christian Heimes c77d9f38c2 Issue #11016: Add C implementation of the stat module as _stat 2013-06-22 21:05:02 +02:00
Andrew Kuchling 6ce8d17d02 Merge from 3.3 2013-06-22 14:57:45 -04:00
Andrew Kuchling 9290dd14b0 #18113: avoid segfault if Py_XDECREF triggers code that calls set_panel_userptr again
Problem noted & original patch by Serhiy Storchaka; I tweaked the patch a bit.
2013-06-22 14:50:56 -04:00
Christian Heimes 6ade516510 BSD: block devices are gone
http://www.freebsd.org/doc/en/books/arch-handbook/driverbasics-block.html
2013-06-22 14:48:42 +02:00
Christian Heimes 45d9493ee9 BSD: block devices are gone
http://www.freebsd.org/doc/en/books/arch-handbook/driverbasics-block.html
2013-06-22 14:48:32 +02:00
Christian Heimes 79278bd8f6 Fix test_stat on BSD, /dev/da0 and /dev/ad0 are links 2013-06-21 18:53:27 +02:00
Christian Heimes 60a95933cb Fix test_stat on BSD, /dev/da0 and /dev/ad0 are links 2013-06-21 18:53:13 +02:00
Christian Heimes 085e1c6e6c Add tests for untested features of the 'stat' module (part of issue #11016) 2013-06-21 18:26:05 +02:00
Christian Heimes f678b3131e Add tests for untested features of the 'stat' module (part of issue #11016) 2013-06-21 18:25:56 +02:00
Serhiy Storchaka 10dc0eb5a4 Issue #18202: Fix minor bugs and cleanup test_source_encoding.py. 2013-06-19 10:29:58 +03:00
Serhiy Storchaka 0a3cdf063c Issue #18202: Fix minor bugs and cleanup test_coding.py. 2013-06-19 10:23:35 +03:00
Victor Stinner e08d4881f8 (Merge 3.3) test_faulthandler: use _sigsegv() instead of _read_null()
faulthandler._read_null() is not reliable: it does not crash on AIX.
2013-06-17 23:39:06 +02:00
Victor Stinner 5678539500 test_faulthandler: use _sigsegv() instead of _read_null()
faulthandler._read_null() is not reliable: it does not crash on AIX.
2013-06-17 23:37:59 +02:00
Victor Stinner 3f41c64ba0 (Merge 3.3) Issue #18238: Skip test_signal.test_sigwaitinfo_interrupted() on AIX
sigwaitinfo() can be interrupted on Linux (raises InterruptedError), but not on
AIX.
2013-06-17 21:52:24 +02:00
Victor Stinner 91f9bdd773 Issue #18238: Skip test_signal.test_sigwaitinfo_interrupted() on AIX
sigwaitinfo() can be interrupted on Linux (raises InterruptedError), but not on
AIX.
2013-06-17 21:51:56 +02:00
Victor Stinner 546ccf090e Issue #18228: Use locale.setlocale(name, None) instead of
locale.getlocale(name) in test.regrtest.saved_test_environment

locale.getlocale() parses the locale, which is useless for
saved_test_environment.
2013-06-17 21:28:14 +02:00
Victor Stinner d9ccf7fe22 Issue #18228: Fix locale test of test.regrtest.saved_test_environment
Skip LC_ALL becore getlocale(locale.LC_ALL) always fail, and catch also
ValueError.
2013-06-17 20:40:05 +02:00
Victor Stinner a222de1a23 (Merge 3.3) regrtest.py: Fix another typo in the usage of the faulthandler module 2013-06-17 20:35:42 +02:00
Victor Stinner 934676afba regrtest.py: Fix another typo in the usage of the faulthandler module 2013-06-17 20:35:08 +02:00
Victor Stinner 4a704d2341 (Merge 3.3) regrtest.py: Fix typo in the usage of the faulthandler module 2013-06-17 20:28:02 +02:00
Victor Stinner 4de701b728 regrtest.py: Fix typo in the usage of the faulthandler module 2013-06-17 20:27:10 +02:00
Christian Heimes 9ce4f36aa1 merge heads 2013-06-17 15:45:11 +02:00
Christian Heimes 9a5395ae2b Issue #18147: Add diagnostic functions to ssl.SSLContext().
get_ca_list() lists all loaded CA certificates and cert_store_stats() returns
amount of loaded X.509 certs, X.509 CA certs and CRLs.
2013-06-17 15:44:12 +02:00
Serhiy Storchaka a5f004fe7d Merge heads 2013-06-17 16:38:00 +03:00
Serhiy Storchaka 774bed7e60 Issue #18167: cgi.FieldStorage no more fails to handle multipart/form-data
when \r\n appears at end of 65535 bytes without other newlines.
2013-06-17 16:36:20 +03:00
Serhiy Storchaka c7bfe0e42e Issue #18167: cgi.FieldStorage no more fails to handle multipart/form-data
when \r\n appears at end of 65535 bytes without other newlines.
2013-06-17 16:34:41 +03:00
Christian Heimes 9424bb4aea Issue #18207: Fix test_ssl for some versions of OpenSSL that ignore seconds
in ASN1_TIME fields.
2013-06-17 15:32:57 +02:00
Serhiy Storchaka 78be6e8aa3 Issue #18223: Refactor test_tarfile.
* Use mixins for generating tests for different compression types.
* Make test_tarfile discoverable.
* Use more special tests (i.e. assertEqual, assertIs) instead of assertTrue.
* Add explicit test skips instead of reporting skipped tests as passed.
* Wrap long lines.
* Correct a comment for test_hardlink_extraction1.
* Add support.requires_gzip.
* Replace ImportError by  ModuleNotFoundError.

and some other minor enhancements.
2013-06-17 16:11:06 +03:00
Serhiy Storchaka 8b56292079 Issue #18223: Refactor test_tarfile.
* Use mixins for generating tests for different compression types.
* Make test_tarfile discoverable.
* Use more special tests (i.e. assertEqual, assertIs) instead of assertTrue.
* Add explicit test skips instead of reporting skipped tests as passed.
* Wrap long lines.
* Correct a comment for test_hardlink_extraction1.
* Add support.requires_gzip.

and some other minor enhancements.
2013-06-17 15:38:50 +03:00
Brett Cannon f24fecd4ac Issue #18076: Introduce imoportlib.util.decode_source().
The helper function makes it easier to implement
imoprtlib.abc.InspectLoader.get_source() by making that function
require just the raw bytes for source code and handling all other
details.
2013-06-16 18:37:53 -04:00
Brett Cannon 6d26eba186 Check that warnings.showwarning() is not changed. 2013-06-16 15:20:48 -04:00
Brett Cannon 13d8ff9c5b Issues #18058, 18057: Make importlib._bootstrap.NamespaceLoader
conform the the InspectLoader ABC. Perk of this is that runpy/-m can
now work with namespace packages.
2013-06-16 14:56:58 -04:00
Brett Cannon e4f41deccf Issue #17177: The imp module is pending deprecation.
To make sure there is no issue with code that is both Python 2 and 3
compatible, there are no plans to remove the module any sooner than
Python 4 (unless the community moves to Python 3 solidly before then).
2013-06-16 13:13:40 -04:00
Brett Cannon 39295e7a55 Stop using the deprecated unittest.TestCase.assertRaisesRegexp() 2013-06-16 11:37:57 -04:00
Brett Cannon 2f9f056db1 Make test_builtin work when executed directly 2013-06-15 23:24:11 -04:00
Brett Cannon ef888024d8 Issue #17177: stop using imp in test_importlib 2013-06-15 18:39:21 -04:00
Brett Cannon b57a085c74 Issue #17177: Stop using imp in zipfile 2013-06-15 17:32:30 -04:00
Brett Cannon 9529fbfd36 Issue #17177: Stop using imp in a bunch of tests 2013-06-15 17:11:25 -04:00
Andrew Kuchling 8a2a902f88 Merge with 3.3 2013-06-15 15:10:08 -04:00
Brett Cannon df960682a5 Issue #17177: Stop using imp with py_compile 2013-06-15 14:07:21 -04:00
Andrew Kuchling 53e5ea7951 #18113: Objects associated to a curses.panel object with set_userptr() were leaked.
Reported by Atsuo Ishimoto.
2013-06-15 14:04:04 -04:00
Brett Cannon 7822e123c4 Issue #17177: stop using imp for compileall. 2013-06-14 23:04:02 -04:00
Brett Cannon 0b16b0d3f0 make test more robust under Windows 2013-06-14 22:50:57 -04:00
Brett Cannon a3c96154d2 Issue #17907: touch up the code for imp.new_module(). 2013-06-14 22:26:30 -04:00
Ethan Furman 6b3d64ab5d Closes issue 17947. Adds PEP-0435 (Adding an Enum type to the Python standard library).
Missing files added.
News entry added.
2013-06-14 16:55:46 -07:00
Brett Cannon 05a647deed Issue #18192: Introduce importlib.util.MAGIC_NUMBER and document the
deprecation of imp.get_magic().
2013-06-14 19:02:34 -04:00
Brett Cannon 8c18da20f9 merge 2013-06-14 18:33:21 -04:00
Brett Cannon 33915eba7c Issue #17222: Raise FileExistsError when py_compile.compile would
overwrite a symlink or non-regular file with a regular file.
2013-06-14 18:33:00 -04:00
Ned Deily 7bff3cbe3d Issue #18149: Add filecmp.clear_cache() to manually clear the filecmp cache.
Patch by Mark Levitt
2013-06-14 15:19:11 -07:00
Brett Cannon 3fe35e6503 Issue #18193: Add importlib.reload(), documenting (but not
implementing in code) the deprecation of imp.reload().

Thanks to Berker Peksag for the patch.
2013-06-14 15:04:26 -04:00
Brett Cannon 6f1057605b Remove a dead import line.
Noticed by Serhly Storchaka.
2013-06-14 10:42:48 -04:00
Brett Cannon 58f2efb968 Move test_pep352 over to unittest.main() 2013-06-13 21:18:43 -04:00
Serhiy Storchaka 9702a17a6a Issue #18048: Merge test_pep263.py and test_coding.py into test_source_encoding.py. 2013-06-13 10:08:00 +03:00
Serhiy Storchaka 07c805d0fc Issue #18048: Rename test_coding.py to test_source_encoding.py. 2013-06-13 09:50:42 +03:00
Serhiy Storchaka 29f2d73068 Issue #18048: Rename test_pep263.py to test_source_encoding.py. 2013-06-13 09:48:15 +03:00
Brett Cannon e5b25df16d Issue #15767: Add an explicit test for raising ModuleNotFoundError
when None in sys.modules.
2013-06-12 23:38:50 -04:00
Brett Cannon 3e9a9ae09d Update various test modules to use unittest.main() for test discovery
instead of manually listing tests for test.support.run_unittest().
2013-06-12 21:25:59 -04:00
Brett Cannon e382b5868a Partially revert changeset #281857369a78 to make sure threads are
reaped in all situations.
2013-06-12 21:25:23 -04:00
Brett Cannon c9a1bfed5d Move test___all__ over to unittest.main() and use ModuleNotFoundError 2013-06-12 20:12:30 -04:00
Brett Cannon 603dcf2714 Spruce up test_xmlrpc by using ModuleNotFoundError and moving to
unittest.main().
2013-06-12 20:04:19 -04:00
Brett Cannon d5b4e1d891 Move test_zipfile to unittest.main() 2013-06-12 19:57:19 -04:00
Brett Cannon b1611e2772 Issue #15767: Introduce ModuleNotFoundError, a subclass of
ImportError.

The exception is raised by import when a module could not be found.
Technically this is defined as no viable loader could be found for the
specified module. This includes ``from ... import`` statements so that
the module usage is consistent for all situations where import
couldn't find what was requested.

This should allow for the common idiom of::

  try:
    import something
  except ImportError:
    pass

to be updated to using ModuleNotFoundError and not accidentally mask
ImportError messages that should propagate (e.g. issues with a
loader).

This work was driven by the fact that the ``from ... import``
statement needed to be able to tell the difference between an
ImportError that simply couldn't find a module (and thus silence the
exception so that ceval can raise it) and an ImportError that
represented an actual problem.
2013-06-12 16:59:46 -04:00
Brett Cannon 638ce0779b Move code from test_importhooks into test_zipimport. 2013-06-12 15:57:01 -04:00
Serhiy Storchaka f15ffe0ee5 Add tests for issue #18183. 2013-06-12 09:28:20 +03:00
Serhiy Storchaka 31b1c8bbde Add tests for issue #18183. 2013-06-12 09:20:44 +03:00
Brett Cannon 68133fdcbe Issue #18158: delete test_importhooks. Redundant in the face of
test_importlib.
2013-06-11 17:12:30 -04:00
Benjamin Peterson 3164f5d565 merge 3.3 (#18183) 2013-06-10 09:24:01 -07:00
Benjamin Peterson 7e30373126 remove MAX_MAXCHAR because it's unsafe for computing maximum codepoitn value (see #18183) 2013-06-10 09:19:46 -07:00
Richard Oudkerk a35a128acc Merge. 2013-06-10 16:31:39 +01:00
Richard Oudkerk 0e547b66dc Issue #18174: Fix fd leaks in tests. 2013-06-10 16:29:19 +01:00
Ronald Oussoren 36451f076b (3.3->default) Ensure that the fix for #17269 also works on OSX 10.4
AI_NUMERICSERV isn't defined on OSX 10.4.
2013-06-10 10:37:12 +02:00
Ronald Oussoren a822d36675 Ensure that the fix for #17269 also works on OSX 10.4
AI_NUMERICSERV isn't defined on OSX 10.4.
2013-06-10 10:36:28 +02:00
Christian Heimes 46bebee25f Issue #17134: Add ssl.enum_cert_store() as interface to Windows' cert store. 2013-06-09 19:03:31 +02:00
Christian Heimes 6d7ad13a45 Issue #18143: Implement ssl.get_default_verify_paths() in order to debug
the default locations for cafile and capath.
2013-06-09 18:02:55 +02:00
Serhiy Storchaka 9670543a00 Issue #18038: SyntaxError raised during compilation sources with illegal
encoding now always contains an encoding name.
2013-06-09 16:53:55 +03:00
Serhiy Storchaka 3af14aaba5 Issue #18038: SyntaxError raised during compilation sources with illegal
encoding now always contains an encoding name.
2013-06-09 16:51:52 +03:00
Ezio Melotti f103d55b2a #17691: merge with 3.3. 2013-06-09 00:10:04 +03:00
Ezio Melotti 28b0d9d13e #17691: test_univnewlines now works with unittest test discovery. Patch by Zachary Ware. 2013-06-09 00:07:06 +03:00
Łukasz Langa 7f7a67aac8 Fixed #18150: duplicate test inside TestSingleDispatch
Thanks to Vajrasky Kok for the patch
2013-06-07 22:25:27 +02:00
Brett Cannon 997487d5d7 Issue #7732: Move an imp.find_module test from test_import to
test_imp.
2013-06-07 13:26:53 -04:00
Vinay Sajip 30298b468b Closes #11959: SMTPServer and SMTPChannel now take an optional map, use of which avoids affecting global state. 2013-06-07 15:21:41 +01:00
Łukasz Langa 6f69251980 Add reference implementation for PEP 443
PEP accepted: http://mail.python.org/pipermail/python-dev/2013-June/126734.html
2013-06-05 12:20:24 +02:00
Serhiy Storchaka 7d15b54f37 Issue #18094: test_uuid no more reports skipped tests as passed. 2013-05-31 22:31:02 +03:00
Stefan Krah 891ca9e06a Backport bff16086f03b and bcaaaa00425b. 2013-05-29 19:14:17 +02:00
Stefan Krah 6edda14b29 Issue #17768: Support newline fill character in decimal.py and NUL fill
character in _decimal.c.
2013-05-29 15:45:38 +02:00
Senthil Kumaran c70a6ae49b #17403: urllib.parse.robotparser normalizes the urls before adding to ruleline.
This helps in handling certain types invalid urls in a conservative manner.
2013-05-29 05:54:31 -07:00
Terry Jan Reedy eb4c9c77b8 Issue #15392: Do not run tests if threading/_thread not available. Otherwise
touchup test_idle. Rename README.txt.
2013-05-28 22:21:53 -04:00
Serhiy Storchaka 37a79a12d1 Issue #18025: Fixed a segfault in io.BufferedIOBase.readinto() when raw
stream's read() returns more bytes than requested.
2013-05-28 16:24:45 +03:00
Serhiy Storchaka 12516e2c1b Issue #17746: Skip test_shutil.test_non_matching_mode when run as root or
on unsuitable platform/environment.
2013-05-28 15:50:15 +03:00
Serhiy Storchaka ea2b490f3d Issue #18011: base64.b32decode() now raises a binascii.Error if there are
non-alphabet characters present in the input string to conform a docstring.
Updated the module documentation.
2013-05-28 15:27:29 +03:00
Jason R. Coombs b501b565c6 Use simple call to os.symlink for broken link (intended for previous commit) 2013-05-27 23:52:43 -04:00
Jason R. Coombs 3a09286790 Issue #13772: Restored directory detection of targets in `os.symlink` on Windows, which was temporarily removed in Python 3.2.3 due to an incomplete implementation. The implementation now works even if the symlink is created in a location other than the current directory. 2013-05-27 23:21:28 -04:00
Terry Jan Reedy db4e5c53c9 Issue #15392: Create a unittest framework for IDLE.
Preliminary patch by Rajagopalasarma Jayakrishnan.
2013-05-27 21:32:03 -04:00
Antoine Pitrou 80bc00f582 Issue #18063: fix some struct specifications in the tests for sys.getsizeof(). 2013-05-25 23:47:29 +02:00
Eli Bendersky 4ace240fe5 Clean-up duplicated code in tests 2013-05-25 07:12:14 -07:00
Eli Bendersky 6dc32b34dd Issue #13612: handle unknown encodings without a buffer overflow.
This affects pyexpat and _elementtree. PyExpat_CAPI now exposes a new
function - DefaultUnknownEncodingHandler.

Based on a patch by Serhiy Storchaka.
2013-05-25 05:25:48 -07:00
Antoine Pitrou 6b5a38c728 Fix test_bad_address on Ubuntu 13.04 2013-05-25 13:08:13 +02:00
Ronald Oussoren 27a4ac535f Issue #17269: Workaround for a platform bug in getaddrinfo on OSX
Without this patch socket.getaddrinfo crashed when called
with some unusual argument combinations.
2013-05-24 13:47:37 +02:00
Benjamin Peterson 6724612755 add test for inequality 2013-05-22 13:27:25 -07:00
Serhiy Storchaka 66d53fa9ad Issue #16986: ElementTree now correctly parses a string input not only when
an internal XML encoding is UTF-8 or US-ASCII.
2013-05-22 17:07:51 +03:00
Charles-Francois Natali dd225e4c64 Issue #17684: Fix some test_socket failures due to limited FD passing support
on OS-X. Patch by Jeff Ramnani.
2013-05-20 19:08:19 +02:00
Benjamin Peterson 611d901289 add recursive repr test 2013-05-19 19:39:38 -07:00
Antoine Pitrou dc49b2b88c Try to make test more reliable (saw some sporadic failures on buildbots) 2013-05-19 15:55:40 +02:00
Antoine Pitrou 916fc7bf28 Issue #11995: test_pydoc doesn't import all sys.path modules anymore. 2013-05-19 15:44:54 +02:00
Eli Bendersky 08231a9c6a Issue #17901: fix TreeBuilder construction for an explicit element_factory=None
Based on report and patch by Aaron Oakley.
2013-05-18 15:47:16 -07:00
Richard Oudkerk 90a24270f8 Close file before reopening to keep Windows happy in test_sax. 2013-05-18 18:11:30 +01:00
Antoine Pitrou 636f93c63b Issue #17980: Fix possible abuse of ssl.match_hostname() for denial of service using certificates with many wildcards (CVE-2013-2099). 2013-05-18 17:56:42 +02:00
Benjamin Peterson d2b58a9880 only recursively expand in the format spec (closes #17644) 2013-05-17 17:34:30 -05:00
Benjamin Peterson 5cfbd2642c frozen modules now apparently have empty __path__ 2013-05-31 22:18:26 -07:00
Brett Cannon 3e0651b5fa Issue #18065: For frozen packages set __path__ to [].
Previously __path__ was set to [__name__], but that could lead to bad
results if someone managed to circumvent the frozen importer and
somehow ended up with a finder that thought __name__ was a legit
directory/location.
2013-05-31 23:18:39 -04:00
Brett Cannon 0dbb4c7f13 Issues #18088, 18089: Introduce
importlib.abc.Loader.init_module_attrs() and implement
importlib.abc.InspectLoader.load_module().

The importlib.abc.Loader.init_module_attrs() method sets the various
attributes on the module being loaded. It is done unconditionally to
support reloading. Typically people used
importlib.util.module_for_loader, but since that's a decorator there
was no way to override it's actions, so init_module_attrs() came into
existence to allow for overriding. This is also why module_for_loader
is now pending deprecation (having its other use replaced by
importlib.util.module_to_load).

All of this allowed for importlib.abc.InspectLoader.load_module() to
be implemented. At this point you can now implement a loader with
nothing more than get_code() (which only requires get_source();
package support requires is_package()). Thanks to init_module_attrs()
the implementation of load_module() is basically a context manager
containing 2 methods calls, a call to exec(), and a return statement.
2013-05-31 18:56:47 -04:00
Brett Cannon b60a43eabf Add a reset_name argument to importlib.util.module_to_load in order to
control whether to reset the module's __name__ attribute in case a
reload is being done.
2013-05-31 18:11:17 -04:00
Serhiy Storchaka c7a2825681 Issue #18094: test_uuid no more reports skipped tests as passed. 2013-05-31 22:34:00 +03:00
Brett Cannon 357c9fb055 Rename importlib.util.ModuleManager to module_to_load so that the name
explains better what the context manager is providing.
2013-05-30 17:31:47 -04:00
Stefan Krah 2e537f9edc test_decimal: add __sizeof__() tests for code coverage. 2013-05-29 18:50:06 +02:00
Stefan Krah 8d90e383a3 Merge 3.3. 2013-05-29 15:47:24 +02:00
Senthil Kumaran 6b3026ce72 merge from 3.3
#17403: urllib.parse.robotparser normalizes the urls before adding to
ruleline. This helps in handling certain types invalid urls in a conservative
manner. Patch contributed by Mher Movsisyan.
2013-05-29 05:57:21 -07:00
Terry Jan Reedy 7b503965a0 Merge with 3.3 2013-05-28 22:22:14 -04:00
Brett Cannon 3dc48d6f69 Issue #18070: importlib.util.module_for_loader() now sets __loader__
and __package__ unconditionally in order to do the right thing for
reloading.
2013-05-28 18:35:54 -04:00
Brett Cannon a3687f0d68 Introduce importlib.util.ModuleManager which is a context manager to
handle providing (and cleaning up if needed) the module to be loaded.

A future commit will use the context manager in
Lib/importlib/_bootstrap.py and thus why the code is placed there
instead of in Lib/importlib/util.py.
2013-05-28 17:29:34 -04:00
Serhiy Storchaka 281945f427 Issue #18025: Fixed a segfault in io.BufferedIOBase.readinto() when raw
stream's read() returns more bytes than requested.
2013-05-28 16:27:08 +03:00
Serhiy Storchaka 5758fa78d0 Issue #17746: Skip test_shutil.test_non_matching_mode when run as root or
on unsuitable platform/environment.
2013-05-28 15:53:46 +03:00
Serhiy Storchaka 77a3ad743f Issue #18011: base64.b32decode() now raises a binascii.Error if there are
non-alphabet characters present in the input string to conform a docstring.
Updated the module documentation.
2013-05-28 15:30:38 +03:00