Commit Graph

6251 Commits

Author SHA1 Message Date
Antoine Pitrou 603acf99d0 Add a comment about unreachable code, and fix a typo 2009-10-18 18:37:11 +00:00
Antoine Pitrou 8a172b14a3 Add a test for same-thread asynchronous exceptions (see #1779233). 2009-10-18 18:22:04 +00:00
Nick Coghlan 53a9dc91d7 Restore sys.path in test_tk 2009-10-18 10:56:21 +00:00
Nick Coghlan f317019c07 Silence a deprecation warning by using the appropriate replacement construct 2009-10-18 10:29:10 +00:00
Nick Coghlan 9039b83c53 Using CleanImport to revert a reload of the os module doesn't work due to function registrations in copy_reg. The perils of reloading modules even for tests... 2009-10-18 05:38:48 +00:00
Mark Dickinson bfd2dc7479 Protect against attempts to replace PyNumber_Add with PyNumber_InPlaceAdd in builtin sum 2009-10-17 21:46:32 +00:00
Nick Coghlan a0e0f9eda4 Don't replace sys.path in test_site 2009-10-17 16:19:51 +00:00
Nick Coghlan 788d7667cb Avoid replacing existing modules and sys.path in import tests 2009-10-17 15:57:42 +00:00
Nick Coghlan 8157e19e8f Also check and restore identity of sys.path, sys.argv and os.environ rather than just their values (this picked up a few more misbehaving tests) 2009-10-17 15:48:16 +00:00
Nick Coghlan fd4903bf05 Move restoration of the os.environ object into the context manager where it belongs 2009-10-17 15:45:52 +00:00
Nick Coghlan 87c03b3108 Revert changes made to environment in test_httpservers 2009-10-17 15:23:08 +00:00
Nick Coghlan 8c1ffeb614 Don't invoke reload(sys) and use StringIO objects instead of real files to capture stdin and stdout when needed (ensures all sys attributes remain unmodified after test_xmlrpc runs) 2009-10-17 15:09:41 +00:00
Nick Coghlan 7df72dcdf9 Restore original sys.path when running TTK tests 2009-10-17 14:40:54 +00:00
Nick Coghlan b6edf193fb Check and revert expected sys.path alterations 2009-10-17 08:21:21 +00:00
Nick Coghlan a3e97ad5ba Formatting tweak so that before and after values are vertically aligned 2009-10-17 07:34:27 +00:00
Nick Coghlan 2ee358eed3 Enhancement to the new environment checking code to print the changed items under -vv. Also includes a small tweak to allow underscores in the names of resources. 2009-10-17 07:30:40 +00:00
Mark Dickinson 59ca92093c test_math ulp computation was wrong on big-endian systems 2009-10-17 07:06:37 +00:00
Nick Coghlan 0447cd6fdc Correctly restore sys.stdout in test_descr 2009-10-17 06:33:05 +00:00
Mark Dickinson 08133af12e Issue #7142: Fix uses of unicode in memoryview objects 2009-10-15 15:53:58 +00:00
Benjamin Peterson 196b0925ca only clear a module's __dict__ if the module is the only one with a reference to it #7140 2009-10-15 15:44:46 +00:00
Benjamin Peterson 96e319e5ac don't need to mess up sys.path 2009-10-15 15:39:15 +00:00
Benjamin Peterson c63457b18e make inspect.isabstract() always return a boolean; add a test for it, too #7069 2009-10-15 03:06:55 +00:00
Benjamin Peterson e52657220c change test to what I intended 2009-10-15 01:56:25 +00:00
Benjamin Peterson 447dc15658 use floor division and add a test that exercises the tabsize codepath 2009-10-15 01:49:37 +00:00
Antoine Pitrou b844ef7950 Silence py3k warning claiming to affect the random module 2009-10-14 18:56:11 +00:00
Antoine Pitrou bb86314d22 Fix failures in test_profilehooks when run with -3 2009-10-14 18:47:13 +00:00
Antoine Pitrou 79d923b8c4 Silence some py3k warnings claiming to affect _pyio 2009-10-14 18:39:46 +00:00
Antoine Pitrou e22997ec7c Silence a py3k warning claiming to affect Lib/calendar.py 2009-10-14 18:09:45 +00:00
Antoine Pitrou 868817eaf5 Fix a test_atexit failure when run with -3 2009-10-14 17:34:31 +00:00
R. David Murray 14dcd43d0b Enhanced Issue 7058 patch, which will not be backported. Refactors the
code, adds checks for stdin/out/err, cwd, and sys.path, and adds a new
section in the summary for tests that modify the environment (thanks to
Ezio Melotti for that suggestion).
2009-10-14 13:58:07 +00:00
Senthil Kumaran 274686631a Fixed Issue6894, urllib2 doesn't respect "no_proxy" environment 2009-10-11 02:00:07 +00:00
Antoine Pitrou 58d2f2689a Issue #7055: test___all__ now greedily detects all modules which have an
__all__ attribute, rather than using a hardcoded and incomplete list.
2009-10-10 20:52:11 +00:00
Mark Dickinson 539bff4234 Update decimal test data to the most recent set from Mike Cowlishaw. 2009-10-08 16:28:39 +00:00
Amaury Forgeot d'Arc d0052d17b1 #1571184: makeunicodedata.py now generates the functions _PyUnicode_ToNumeric,
_PyUnicode_IsLinebreak and _PyUnicode_IsWhitespace.

It now also parses the Unihan.txt for numeric values.
2009-10-06 19:56:32 +00:00
R. David Murray abe3d3ec85 Issue #7058: Added save/restore for argv and os.environ to runtest_inner
in regrtest, with warnings if the called test modifies them.
2009-10-05 17:03:09 +00:00
Mark Dickinson 245d915e3e Issue #7042: Fix test_signal failure on OS X 10.6 64-bit builds
(and also, with luck, on the x86 FreeBSD buildbot), by making sure
that some user time is used in test_itimer_virtual.
2009-10-04 18:38:39 +00:00
Benjamin Peterson 82d31e9b20 test logging 2009-10-04 13:38:38 +00:00
Benjamin Peterson 7adbb5a35d #7050 fix a SystemError when using tuple unpacking and augmented assignment 2009-10-03 20:23:24 +00:00
Georg Brandl f895cf5d33 #7031: Add TestCase.assertIsInstance and negated method. 2009-10-01 20:59:31 +00:00
Senthil Kumaran dc61ec35ec That's self.env.unset(k) and not env.unset(k) I was heading back to the problem. 2009-10-01 01:50:13 +00:00
Senthil Kumaran 5a43e86542 using dict.unset(k) instead of del dict[k]. consistent with release26-maint 2009-10-01 01:19:18 +00:00
Senthil Kumaran 91abd6e68d Fix for issue7026 test_urllib: unsetting missing 'env' variable. 2009-10-01 01:07:03 +00:00
Mark Dickinson 8ca7482cc9 Fix buggy accuracy test 2009-09-30 16:58:01 +00:00
Philip Jenvey 8b9020458a #5329: fix os.popen* regression from 2.5: don't execute commands as a sequence
through the shell. also document the correct subprocess replacement for this
case
patch from Jean-Paul Calderone and Jani Hakala
2009-09-29 19:10:15 +00:00
Mark Dickinson 7e7a3ec901 Issue #7019: Unmarshalling of bad long data could produce unnormalized
PyLongs.  Raise ValueError instead.
2009-09-29 19:01:06 +00:00
Antoine Pitrou 7248178cd9 Issue #6790: Make it possible again to pass an `array.array` to
`httplib.HTTPConnection.send`. Patch by Kirk McDonald.
2009-09-29 17:48:18 +00:00
Philip Jenvey dbf3b258e7 #6990: clear threading.local's key only after its thread state is removed:
fixes local subclasses leaving old state around after a ref cycle GC which
could be recycled by new locals
2009-09-29 04:32:44 +00:00
Mark Dickinson b93fff0a57 Issue #3366: Add gamma function to math module.
(lgamma, erf and erfc to follow).
2009-09-28 18:54:55 +00:00
R. David Murray 97f5ff37ff Prevent test_bad_address failure when a domain in the dns search
path implements a '*' default rule.  Also update comment with
a more complete explanation of the difficulties inherent in
the test.
2009-09-28 16:57:45 +00:00
Skip Montanaro b4fd4d37a1 Patch from Thomas Barr so that csv.Sniffer will set doublequote property.
Closes issue 6606.
2009-09-28 02:12:27 +00:00
Ezio Melotti 9aac2455ab #7000: document "sep" in capwords. Add a few tests 2009-09-26 11:20:53 +00:00
Andrew M. Kuchling b49e53ee16 #6243: fix segfault when keyname() returns a NULL pointer.
Bug noted by Trundle, patched by Trundle and Jerry Chen.
2009-09-25 22:23:54 +00:00
Kristján Valur Jónsson 2fcd03bb77 http://bugs.python.org/issue6971
Adding the SIO_KEEPALIVE_VALS command to socket.ioctl on windows
2009-09-25 15:19:51 +00:00
Brett Cannon 4d94743c28 When range checking was added to time.strftime() a check was placed on tm_isdst
to make sure it fell within [-1, 1] just in case someone implementing
strftime() in libc was stupid enough to assume this. Turns out, though, some
OSs (e.g. zOS) are stupid enough to use values outside of this range for time
structs created by the system itself. So instead of throwing a ValueError,
tm_isdst is now normalized before being passed to strftime().

Fixes issue #6823. Thanks Robert Shapiro for diagnosing the problem and
contributing an initial patch.
2009-09-22 00:29:48 +00:00
Ronald Oussoren 9f20d9d0ee Issue 6877: this patch makes it possible to link the readline extension
to the libedit emulation of the readline API on OSX 10.5 or later.

This also adds a minimal testsuite for readline to check that the
history manipuation functions have the same interface with both
C libraries.
2009-09-20 14:18:15 +00:00
Georg Brandl ab849891ef #6944: the argument to PyArg_ParseTuple should be a tuple, otherwise a SystemError is set. Also clean up another usage of PyArg_ParseTuple. 2009-09-19 07:35:07 +00:00
Benjamin Peterson dc782b55f2 backport keyword argument support for bytearray.decode 2009-09-18 21:46:21 +00:00
Benjamin Peterson 332d721750 add keyword arguments support to str/unicode encode and decode #6300 2009-09-18 21:14:55 +00:00
Mark Dickinson 2985dbb526 Use skipUnless to skip math module tests on non-IEEE 754 platforms. 2009-09-18 21:01:50 +00:00
Georg Brandl ebf3adc4fe #6844 followup: the warning when setting Exception.message was removed, do not test for it. 2009-09-17 11:48:31 +00:00
Georg Brandl e9741f3ed8 Issue #6922: Fix an infinite loop when trying to decode an invalid
UTF-32 stream with a non-raising error handler like "replace" or "ignore".
2009-09-17 11:28:09 +00:00
Georg Brandl 0674d3fb5f #6844: do not emit DeprecationWarnings on access if Exception.message has been set by the user.
This works by always setting it in __dict__, except when it's implicitly set in __init__.
2009-09-16 20:30:09 +00:00
Thomas Wouters c4dcb3801e Fix issue #1590864, multiple threads and fork() can cause deadlocks, by
acquiring the import lock around fork() calls. This prevents other threads
from having that lock while the fork happens, and is the recommended way of
dealing with such issues. There are two other locks we care about, the GIL
and the Thread Local Storage lock. The GIL is obviously held when calling
Python functions like os.fork(), and the TLS lock is explicitly reallocated
instead, while also deleting now-orphaned TLS data.

This only fixes calls to os.fork(), not extension modules or embedding
programs calling C's fork() directly. Solving that requires a new set of API
functions, and possibly a rewrite of the Python/thread_*.c mess. Add a
warning explaining the problem to the documentation in the mean time.

This also changes behaviour a little on AIX. Before, AIX (but only AIX) was
getting the import lock reallocated, seemingly to avoid this very same
problem. This is not the right approach, because the import lock is a
re-entrant one, and reallocating would do the wrong thing when forking while
holding the import lock.

Will backport to 2.6, minus the tiny AIX behaviour change.
2009-09-16 19:55:54 +00:00
Georg Brandl 69dfe8d80e Make the pdb displayhook compatible with the standard displayhook: do not print Nones. Add a test for that. 2009-09-16 16:36:39 +00:00
Georg Brandl 6c39f06ab2 Remove some more boilerplate from the actual tests in test_pdb. 2009-09-16 16:22:12 +00:00
Michael Foord e91ea56b30 Test discovery in unittest will only attempt to import modules that are importable; i.e. their names are valid Python identifiers. If an import fails during discovery this will be recorded as an error and test discovery will continue. Issue 6568. 2009-09-13 19:07:03 +00:00
Michael Foord 5a9719d627 unittest.TestLoader.loadTestsFromName honors the loader suiteClass attribute. Issue 6866. 2009-09-13 17:28:35 +00:00
Michael Foord c3f79373e8 Objects that compare equal automatically pass or fail assertAlmostEqual and assertNotAlmostEqual tests on unittest.TestCase. Issue 6567. 2009-09-13 16:40:02 +00:00
Ezio Melotti 1036a7f7e1 #6026 - fix tests that failed without zlib 2009-09-12 14:43:43 +00:00
Lars Gustäbel 21121e64b4 Issue #6856: Add a filter keyword argument to TarFile.add().
The filter argument must be a function that takes a TarInfo
object argument, changes it and returns it again. If the
function returns None the TarInfo object will be excluded
from the archive.
The exclude argument is deprecated from now on, because it
does something similar but is not as flexible.
2009-09-12 10:28:15 +00:00
Benjamin Peterson 93ed82048f revert unintended changes 2009-09-09 11:42:57 +00:00
Benjamin Peterson 8246968b12 tabbify 2009-09-09 11:40:54 +00:00
Mark Dickinson 5cfa8044ff Issue #6857: Fix Decimal formatting to be consistent with existing float
formatting:  both are now right-aligned by default.
2009-09-08 20:20:19 +00:00
Mark Dickinson 968f1690d3 #Issue 6795: Fix infinite recursion in long(Decimal('nan')); change int(Decimal('nan')) to raise ValueError instead of either returning NaN or raising InvalidContext. 2009-09-07 18:04:58 +00:00
Mark Dickinson 491ea55f28 Issue #6850: Fix bug in Decimal._parse_format_specifier for formats
with no type specifier.
2009-09-07 16:17:41 +00:00
Mark Dickinson c8a7c7c3b9 Issue #6846: bytearray.pop was returning ints in the range [-128, 128)
instead of [0, 256).  Thanks Hagen Fürstenau for the report and fix.
2009-09-06 10:03:31 +00:00
Ronald Oussoren 2596758cb4 Fix build issues on OSX 10.6 (issue 6802) 2009-09-06 10:00:26 +00:00
Georg Brandl ed4ca821f1 #5101: add back tests to test_funcattrs that were lost during unittest conversion, and make some PEP8 cleanups. 2009-09-04 11:19:34 +00:00
Brett Cannon e7e941e7f7 test_platform fails on OS X Snow Leopard because the UNIX command to get the
canonical version, sw_vers, leaves off trailing zeros in the version number
(e.g. 10.6 instead of 10.6.0). Test now compensates by tacking on extra zeros
for the test comparison.

Fixes issue #6806.
2009-09-03 21:25:21 +00:00
Armin Rigo ffd0dc1e8b Sorry, sorry! Ignore my previous two commits. I mixed up the version
of python with which I tried running the crashers.  They don't crash
the current HEAD.
2009-09-03 19:45:27 +00:00
Armin Rigo f866fbb303 Does not terminate: consume all memory without responding to Ctrl-C.
I am not too sure why, but you can surely find out by gdb'ing a bit...
2009-09-03 19:42:03 +00:00
Armin Rigo f416690490 Found the next crasher by thinking about this logic in PyPy. 2009-09-03 19:40:07 +00:00
Benjamin Peterson 6fcf9b50bc remove the check that classmethod's argument is a callable 2009-09-01 22:27:57 +00:00
Amaury Forgeot d'Arc fff896b309 #6750: TextIOWrapped could duplicate output when several threads write to it.
this affect text files opened with io.open(), and the print() function of py3k
2009-08-29 18:14:40 +00:00
Lars Gustäbel f7cda5287d Issue #6054: Do not normalize stored pathnames.
No longer use tarfile.normpath() on pathnames. Store pathnames
unchanged, i.e. do not remove "./", "../" and "//" occurrences.
However, still convert absolute to relative paths.
2009-08-28 19:23:44 +00:00
Mark Dickinson 7a7739d75e Issue #6794: Fix handling of NaNs in Decimal.compare_total and
Decimal.compare_total_mag.
2009-08-28 13:25:02 +00:00
Kristján Valur Jónsson 429677ec38 Issue 6654
Allow the XML-RPC server to use the HTTP request path when dispatching.  Added a MultiPathXMLRPCServer class that uses the feature, plus unit tests.
2009-08-27 23:13:18 +00:00
Kristján Valur Jónsson e2a77980b6 issue 6275
Add an "exc_value" attribute to the _AssertRaisesContext context manager in the unittest package.  This allows further tests on the exception that was raised after the context manager exits.
2009-08-27 22:20:21 +00:00
Tarek Ziadé 764fc235a6 #6693: New functions in site.py to get user/global site packages paths. 2009-08-20 21:23:13 +00:00
Frank Wierzbicki df756775f5 Add test of file.write(array) extracted from Jython. 2009-08-16 20:22:51 +00:00
Gregory P. Smith b98d6b2cbc Issue 6665: Fix fnmatch to properly match filenames with newlines in them. 2009-08-16 18:52:58 +00:00
Benjamin Peterson c0ba828857 better col_offsets for "for" statements with tuple unpacking #6704
Patch from Frank Wierzbicki.
2009-08-15 22:59:21 +00:00
Benjamin Peterson 4c6e8088f5 #6707 fix a crash with dir() on an uninitialized module 2009-08-15 13:16:38 +00:00
Brett Cannon 764465f315 Expat could crash if given the wrong kind of input by never stopping its
tokenizing step.

Thanks to Ivan Krstić for the patch.
2009-08-13 19:27:12 +00:00
Gregory P. Smith c4ad0345cf Fix issue1628205: Socket file objects returned by socket.socket.makefile() now
properly handles EINTR within the read, readline, write & flush methods.
The socket.sendall() method now properly handles interrupted system calls.
2009-08-13 18:54:50 +00:00
Antoine Pitrou 20e1f932fa Issue #6629: Fix a data corruption issue in the new `io` package, which could
occur when writing to a BufferedRandom object (e.g. a file opened in "rb+" or
"wb+" mode) after having buffered a certain amount of data for reading. This
bug was not present in the pure Python implementation.

Yes, this is a serious issue.
2009-08-06 20:18:29 +00:00
Raymond Hettinger 8fdab95260 Issue 6637: defaultdict.copy() failed with an empty factory. 2009-08-04 19:08:05 +00:00
Frank Wierzbicki 6c0f337904 Adding tests derived from the Jython project. These are primarily tests of
'single' statements with partial sentences (so they test things like "try:" in
interactive mode).  Others tests hit areas that previously failed in Jython. A
couple still fail in Jython, mainly due to the difficulty of parsing partial
sentences (but should be fixed by Jython 2.6).
2009-08-02 20:37:48 +00:00
Mark Dickinson 4326ad8f72 Issue #6595: Allow Decimal constructor to accept non-European decimal
digits, as recommended by the specification.  (Backport of r74279 from
py3k.)
2009-08-02 10:59:36 +00:00
Amaury Forgeot d'Arc 3e5b027a64 #6511: ZipFile will now raise BadZipfile when opening an empty or tiny file,
like it does for larger invalid files.
2009-07-28 22:15:30 +00:00