Commit Graph

14305 Commits

Author SHA1 Message Date
Gregory P. Smith 7558d57ad2 Rename the actual method definitions to the official assertFoo names.
Adds unittests to make sure the old fail* names continue to work now
and adds a comment that they are pending deprecation.

Also adds a test to confirm that the plural Equals method variants
continue to exist even though we're unlikely to deprecate those.

http://bugs.python.org/issue2578
2009-03-31 19:03:28 +00:00
R. David Murray 597ebab744 A few more test skips via import_module, and change import_module to
return the error message produced by importlib, so that if an import
in the package whose import is being wrapped is what failed the skip
message will contain the name of that module instead of the name of the
wrapped module.  Also fixed formatting of some previous comments.
2009-03-31 18:32:17 +00:00
Raymond Hettinger 3476d1279f Per the language summit, the optional fastpath imports should use from-import-star. 2009-03-31 17:47:06 +00:00
Gregory P. Smith 2839985c7e The unittest.TestCase.assertEqual() now displays the differences in lists,
tuples, dicts and sets on failure.

Many new handy type and comparison specific assert* methods have been added
that fail with error messages actually useful for debugging.  Contributed in
by Google and completed with help from mfoord and GvR at PyCon 2009 sprints.

Discussion lives in http://bugs.python.org/issue2578.
2009-03-31 16:54:10 +00:00
Jeremy Hylton 88f1c04215 Global statements from one function leaked into parallel functions.
Re http://bugs.python.org/issue4315

The symbol table used the same name dictionaries to recursively
analyze each of its child blocks, even though the dictionaries are
modified during analysis.  The fix is to create new temporary
dictionaries via the analyze_child_block().  The only information that
needs to propagate back up is the names of the free variables.

Add more comments and break out a helper function.  This code doesn't
get any easier to understand when you only look at it once a year.
2009-03-31 13:48:15 +00:00
Jeremy Hylton 1c157ea984 Add is_declared_global() which distinguishes between implicit and
explicit global variables.
2009-03-31 13:17:03 +00:00
Hirokazu Yamamoto 9d2ee5ded2 Issue #5387: Fixed mmap.move crash by integer overflow. 2009-03-31 13:13:05 +00:00
Jesse Noller b2898e0acb add JoinableQueue to __all__ 2009-03-31 03:31:16 +00:00
Jesse Noller 82eb5902ce merge in patch from tim golden to fix contextmanager support for mp.Lock() 2009-03-30 23:29:31 +00:00
R. David Murray d7bf8a5478 Actually suppress warnings in test_at_least_import_untested_modules
inside the catch_warnings context manager.
2009-03-30 23:10:37 +00:00
Ronald Oussoren e0154ed7ff Fix issue #4865: add /Library/Python/2.7/site-packages to
sys.path on OSX, to make it easier to share (some) installed
packages between the system install and a user install.
2009-03-30 23:10:35 +00:00
R. David Murray 3db8a3432b Change more tests to use import_module for the modules that
should cause tests to be skipped.  Also rename import_function
to the more descriptive get_attribute and add a docstring.
2009-03-30 23:05:48 +00:00
Barry Warsaw dbf95a3643 A fix for issue 1974, inspired by the patch from Andi Albrecht (aalbrecht),
though with some changes by me.  This patch should not be back ported or
forward ported.  It's a bit too risky for 2.6 and 3.x does things fairly
differently.
2009-03-30 22:42:17 +00:00
Jesse Noller 019ce773cd finalize the queue prior to shutdown 2009-03-30 21:53:29 +00:00
Senthil Kumaran 5e95e763e1 Fix for bugs: Issue4675 and Issue4962. 2009-03-30 21:51:50 +00:00
R. David Murray e7c9e092b3 Remove references to test_socket_ssl which was deleted in trunk
in r64392 and py3k in r59038.
2009-03-30 20:04:06 +00:00
R. David Murray 59beec326a Add import_function method to test.test_support, and modify a number of
tests that expect to be skipped if imports fail or functions don't
exist to use import_function and import_module.  The ultimate goal is
to change regrtest to not skip automatically on ImportError.  Checking
in now to make sure the buldbots don't show any errors on platforms
I can't direct test on.
2009-03-30 19:04:00 +00:00
Kurt B. Kaiser ce46511957 Tk 8.5 Text widget requires 'wordprocessor' tabstyle attr to handle mixed space/tab properly. Issue 5120, patch by Guilherme Polo. 2009-03-30 16:22:00 +00:00
Jesse Noller 459a648166 Issue 5177: use socket.SO_REUSEADDR on multiprocessing SocketManager sockets 2009-03-30 15:50:42 +00:00
R. David Murray 5cb104d1b9 Revert incorrect change. 2009-03-30 15:30:34 +00:00
Benjamin Peterson 68ffe3ec67 don't rely on the order dict repr #5605 2009-03-30 15:15:38 +00:00
R. David Murray ad74dfe8ff Convert import try/except to use test_support.import_module(). 2009-03-30 15:14:01 +00:00
Benjamin Peterson 3c87e2289d add missing import 2009-03-30 14:42:23 +00:00
Benjamin Peterson 33cd7ef867 fix import 2009-03-30 02:14:21 +00:00
Bob Ippolito 76a982a027 Issue 5381: fix regression in pure python code path, Issue 5584: fix a decoder bug for unicode float literals outside of a container 2009-03-29 22:33:58 +00:00
Benjamin Peterson 8e1a338129 add missing import 2009-03-29 22:27:26 +00:00
Benjamin Peterson 83db7652ca thanks to guido's bytecode verifier, this is fixed 2009-03-29 21:31:05 +00:00
Benjamin Peterson d2c184605e this has been fixed since 2.6 (I love removing these) 2009-03-29 21:22:35 +00:00
Raymond Hettinger b006fcc30c Make life easier for non-CPython implementations. 2009-03-29 18:51:11 +00:00
Guilherme Polo 310916212e Typo fix. 2009-03-29 10:19:05 +00:00
Collin Winter a199f01986 Add the ability to control the random seed used by regrtest.py -r.
This adds a --randseed option, and makes regrtest.py -r indicate what random seed it's using so that that value can later be fed back to --randseed. This option is useful for tracking down test order-related issues found by make buildbottest, for example.
2009-03-29 03:44:19 +00:00
Georg Brandl 5adab304e3 Fix typo. 2009-03-28 00:48:48 +00:00
Benjamin Peterson 7fa9459baf fix another name 2009-03-26 21:44:43 +00:00
Benjamin Peterson 04232973b7 update email tests to use SkipTest 2009-03-26 21:40:29 +00:00
Benjamin Peterson effa1dc709 ** is required here 2009-03-26 21:30:54 +00:00
Benjamin Peterson bf4464a38f add missing import 2009-03-26 21:30:10 +00:00
Benjamin Peterson a9b5be0c05 must pass argument to get expected behavior ;) 2009-03-26 21:11:16 +00:00
Benjamin Peterson bec087f29d fix incorrect auto-translation of TestSkipped -> unittest.SkipTest 2009-03-26 21:10:30 +00:00
Benjamin Peterson ad57d97596 fix naming 2009-03-26 20:49:40 +00:00
Benjamin Peterson 888a39b54c remove test_support.TestSkipped and just use unittest.SkipTest 2009-03-26 20:48:25 +00:00
Benjamin Peterson 21f6aac633 apply the second part of #4242's patch; classify all the implementation details in test_descr 2009-03-26 20:17:27 +00:00
Benjamin Peterson 47d9738b0f rename TestCase.skip() to skipTest() because it causes annoying problems with trial #5571 2009-03-26 20:05:50 +00:00
Benjamin Peterson c3141a6e96 add some useful utilities for skipping tests with unittest's new skipping ability
most significantly apply a modified portion of the patch from #4242 with
patches for skipping implementation details
2009-03-26 19:58:18 +00:00
Benjamin Peterson 0ad9b7727d add support for PyPy 2009-03-26 19:09:21 +00:00
Benjamin Peterson 94e4e2a7e5 roll old test in with new one 2009-03-26 18:58:30 +00:00
Benjamin Peterson b457b89323 more and more implementations now support sys.subversion 2009-03-26 18:55:48 +00:00
Benjamin Peterson f521b8c6d2 add much better tests for python version information parsing 2009-03-26 18:35:37 +00:00
Benjamin Peterson c9301355d8 remove uneeded function 2009-03-26 16:32:23 +00:00
Raymond Hettinger 2dc90fdfaf Separate initialization from clearing. 2009-03-25 22:41:32 +00:00
Benjamin Peterson 2f6f7436aa this can be slightly less ugly 2009-03-25 21:42:51 +00:00
Benjamin Peterson a8adceb431 add shorthands for expected failures and unexpected success 2009-03-25 21:24:04 +00:00
Marc-André Lemburg a519cfc953 Remove the sys.version_info shortcut, since they cause the APIs
to return different information than the _sys_version() output
used in previous Python versions.

This also fixes issue5561: platform.python_version_tuple returns tuple of ints, should be strings

Added more tests for the various platform functions.
2009-03-25 19:44:58 +00:00
Benjamin Peterson d0cdb2ddf2 another style nit 2009-03-24 23:07:07 +00:00
Benjamin Peterson a473f00cac fix newline issue in test summary 2009-03-24 22:56:32 +00:00
Benjamin Peterson 2bf74fd0ac this is better written using assertRaises 2009-03-24 03:24:56 +00:00
Benjamin Peterson 037154865e fix typo 2009-03-24 01:11:37 +00:00
Benjamin Peterson c750d4d761 add new skipping things to __all__ 2009-03-24 00:39:24 +00:00
Benjamin Peterson 4e4de33ca9 update docstring 2009-03-24 00:37:12 +00:00
Benjamin Peterson 3e0aa49d3f remove special metadata 2009-03-24 00:36:16 +00:00
Benjamin Peterson a7d441de68 some cleanup and modernization 2009-03-24 00:35:20 +00:00
Benjamin Peterson bca248e9a5 update from CVS 2009-03-23 23:19:03 +00:00
Benjamin Peterson cb2b0e45d4 comply with the evilJavaNamingScheme for attribute names
It seems my love of PEP 8 overrode the need for consistentcy
2009-03-23 22:29:45 +00:00
Benjamin Peterson 692428e77f implement test skipping and expected failures
patch by myself #1034053
2009-03-23 21:50:21 +00:00
Benjamin Peterson 797eaf305a complain when there's no last exception 2009-03-23 21:25:15 +00:00
Benjamin Peterson 3e6c335ae0 revert r70552; wrong fix 2009-03-23 21:23:30 +00:00
Benjamin Peterson 85e1478ca4 fix very old names for exception terms #5543 2009-03-23 20:47:59 +00:00
Antoine Pitrou f8387af262 Issue #4688: Add a heuristic so that tuples and dicts containing only
untrackable objects are not tracked by the garbage collector. This can
reduce the size of collections and therefore the garbage collection overhead
on long-running programs, depending on their particular use of datatypes.

(trivia: this makes the "binary_trees" benchmark from the Computer Language
Shootout 40% faster)
2009-03-23 18:41:45 +00:00
Raymond Hettinger e5b78563b6 Make imported name private and wrap long-line. 2009-03-23 18:26:59 +00:00
Raymond Hettinger 906f95e80b Move initialization of root link to __init__. 2009-03-23 04:42:18 +00:00
Raymond Hettinger f1e2df9780 Add more comments. Improve variable names.
Make links clearer by using a Link object
instead of a list.  Use proxy links to avoid
circular references.
2009-03-23 00:08:09 +00:00
Benjamin Peterson 704dc269e3 AttributeError can be thrown during recursion errors 2009-03-22 22:24:58 +00:00
Lars Gustäbel 2020a59563 Issue #5068: Fixed the tarfile._BZ2Proxy.read() method that would loop
forever on incomplete input. That caused tarfile.open() to hang when used
with mode 'r' or 'r:bz2' and a fileobj argument that contained no data or
partial bzip2 compressed data.
2009-03-22 20:09:33 +00:00
Benjamin Peterson b364bfe2f4 close the file even if an exception occurs #5536 2009-03-22 17:45:11 +00:00
Mark Dickinson efc82f7e8e Issue #4258: Use 30-bit digits for Python longs, on 64-bit platforms.
Backport of r70459.
2009-03-20 15:51:55 +00:00
Raymond Hettinger c8e81ef508 Fix typo 2009-03-19 23:22:25 +00:00
Raymond Hettinger e980d2d44b * Add implementation notes.
* Re-order methods so that those touching the underlying data
  structure come first and the derived methods come last.
2009-03-19 23:12:41 +00:00
Raymond Hettinger 2412299be9 * Add clearer comment to initialization code.
* Add optional argument to popitem() -- modeled
  after Anthon van der Neut's C version.
* Fix method markup in docs.
2009-03-19 19:59:58 +00:00
Raymond Hettinger 91852ca673 Issue 5381: Add object_pairs_hook to the json module. 2009-03-19 19:19:03 +00:00
Raymond Hettinger 2124599eaa Improve implementation with better underlying data structure
for O(1) deletions.  Big-Oh performance now the same as regular
dictionaries.  Uses a doubly-linked list instead of a list/seq
to track insertion order.
2009-03-19 15:21:10 +00:00
Benjamin Peterson fcfa7ead4f close files after comparing them 2009-03-19 03:04:31 +00:00
Raymond Hettinger a61ae6922f Use mixin methods where possible. (2.7 only -- these don't all exist in 3.0) 2009-03-18 22:13:20 +00:00
Benjamin Peterson 6ffe852f90 fix strange errors when setting attributes on tracebacks #4034 2009-03-18 20:52:15 +00:00
Antoine Pitrou 7c33bd5ecb Attempt to fix Solaris buildbot failure on test_locale 2009-03-18 17:10:04 +00:00
Mark Dickinson b14514a153 Fix bug in _insert_thousands_sep: too much zero padding could be
added for 'n' formats with non-repeating thousands-separator.
2009-03-18 08:22:51 +00:00
Bob Ippolito d914e3f861 merge json library with simplejson 2.0.9 (issue 4136) 2009-03-17 23:19:00 +00:00
Mark Dickinson 277859d591 Issue #2110: Add support for thousands separator and 'n' format specifier
to Decimal __format__ method.
2009-03-17 23:03:46 +00:00
Mark Dickinson b065e52bc2 Fix bug in Decimal __format__ method that swapped left and right
alignment.
2009-03-17 18:01:03 +00:00
Hirokazu Yamamoto bb7467f6e3 Added skip for old MSVC. 2009-03-15 22:43:14 +00:00
Georg Brandl fc9ea97a18 Move the previously local import of threading to module level.
This is cleaner and avoids lockups in obscure cases where a Queue
is instantiated while the import lock is already held by another thread.

OKed by Tim Peters.
2009-03-15 22:11:07 +00:00
Eric Smith 2ace4cf813 Unicode format tests weren't actually testing unicode. This was probably due to the original backport from py3k. 2009-03-14 14:37:38 +00:00
Eric Smith 6f42edb682 Issue 5237, Allow auto-numbered replacement fields in str.format() strings.
For simple uses for str.format(), this makes the typing easier. Hopfully this
will help in the adoption of str.format().

For example:
'The {} is {}'.format('sky', 'blue')

You can mix and matcth auto-numbering and named replacement fields:
'The {} is {color}'.format('sky', color='blue')

But you can't mix and match auto-numbering and specified numbering:
'The {0} is {}'.format('sky', 'blue')
ValueError: cannot switch from manual field specification to automatic field numbering

Will port to 3.1.
2009-03-14 11:57:26 +00:00
Antoine Pitrou feeafff052 Issue #1222: locale.format() bug when the thousands separator is a space character. 2009-03-14 00:07:21 +00:00
Tarek Ziadé 61585c260c Issue #5472: Fixed distutils.test_util tear down 2009-03-11 12:48:04 +00:00
Brett Cannon 6c4cff0f32 Require implementations for warnings.showwarning() support the 'line' argument.
Was a DeprecationWarning for not supporting it since Python 2.6.

Closes issue #3652.
2009-03-11 04:51:06 +00:00
Raymond Hettinger 56411aac79 For collections.deque() objects, expose the maxlen parameter as a read-only attribute. 2009-03-10 12:50:59 +00:00
Raymond Hettinger bac769bb5e Small optimization for corner case where maxlen==0. 2009-03-10 09:31:48 +00:00
Raymond Hettinger daeceb2de8 Add a version tag to the decimal module. 2009-03-10 04:49:21 +00:00
Guilherme Polo 15d57653f1 Fixed issue #2638: Show a window constructed with tkSimpleDialog.Dialog only
after it is has been populated and properly configured in order to prevent
window flashing.
2009-03-07 02:14:38 +00:00
Guilherme Polo 6d6c1fd04e Fixed issue #5193: Guarantee that Tkinter.Text.search returns a string. 2009-03-07 01:19:12 +00:00
Tarek Ziadé 943b24e7e4 Issue #5394: removed > 2.3 syntax from distutils.msvc9compiler 2009-03-07 00:32:45 +00:00
Hirokazu Yamamoto 09033068f1 mmap.resize for anonymous map is not working yet, so changed to real file mapping... 2009-03-05 14:52:44 +00:00
Hirokazu Yamamoto 264fc12fbf Issue #5385: Fixed mmap crash after resize failure on windows.
Now uses NULL instead of INVALID_HANDLE_VALUE as invalid map handle
because CreateFileMapping returns NULL when error occurs.
2009-03-05 14:21:12 +00:00
Ronald Oussoren a97063a108 Fixes issues 3883 and 5194 2009-03-04 21:35:05 +00:00
Brett Cannon 417937733f Fix some more bugs caused by the backport from 3.x for importlib.
Do a more exact copy of the final 3.x code to resolve bugs and add
appropriate tests.
2009-03-04 01:00:53 +00:00
Raymond Hettinger 131af6505a Backport 70140, 70141, 70143, and 70144.
Adds tests, switches from list to deque, fixes __reduce__
which was unnecessarily copying __keys.
2009-03-03 22:59:25 +00:00
Hirokazu Yamamoto eacbbdfb73 Issue #5179: Fixed subprocess handle leak on failure on windows. 2009-03-03 22:18:14 +00:00
Raymond Hettinger 0b15541ae2 Minor simplification. 2009-03-03 21:13:51 +00:00
Raymond Hettinger 9353ea2b85 Make the underlying data structure more private. 2009-03-03 20:53:51 +00:00
Raymond Hettinger f17f81d9c8 Beef-up tests. 2009-03-03 07:12:09 +00:00
Raymond Hettinger e89b8e9832 Backport 70111: Let configparser use ordered dicts by default. 2009-03-03 05:00:37 +00:00
Raymond Hettinger 88a9164cdb Backport 70106: Add OrderedDict support to collections.namedtuple(). 2009-03-03 04:51:24 +00:00
Raymond Hettinger bc512d3abd Backport PEP 372: OrderedDict() 2009-03-03 04:45:34 +00:00
Benjamin Peterson 7d49bba969 give httplib.IncompleteRead a more sane repr #4308 2009-03-02 22:41:42 +00:00
Tarek Ziadé ce45a967c2 removing the force-optimized option as discussed in #1533164 2009-03-02 05:38:44 +00:00
Gregory P. Smith ae91d0907d Adds an optional flags argument to re.split, re.sub and re.subn to be
consistent with the other re module functions.
2009-03-02 05:13:57 +00:00
Benjamin Peterson ad58b7c9da fix a silly problem of caching gone wrong #5401 2009-03-02 03:35:12 +00:00
Georg Brandl bcf7bf3833 Fix 3k-style metaclass syntax in docstrings. 2009-02-28 21:33:10 +00:00
Jeffrey Yasskin 68d6852006 Backport r69961 to trunk, replacing JUMP_IF_{TRUE,FALSE} with
POP_JUMP_IF_{TRUE,FALSE} and JUMP_IF_{TRUE,FALSE}_OR_POP. This avoids executing
a POP_TOP on each conditional and sometimes allows the peephole optimizer to
skip a JUMP_ABSOLUTE entirely. It speeds up list comprehensions significantly.
2009-02-28 19:03:21 +00:00
Hirokazu Yamamoto b0e10c760c Issue #1733986: Fixed mmap crash in accessing elements of second map object
with same tagname but larger size than first map. (Windows)
2009-02-28 12:13:07 +00:00
Hirokazu Yamamoto f2dc885780 Issue #5386: mmap.write_byte didn't check map size, so it could cause buffer
overrun.
2009-02-28 10:31:54 +00:00
Tarek Ziadé 7334735ee1 Issues #1533164 and #5378: Added quiet and force-optimize options to Distutils bdist_rpm command 2009-02-28 10:08:02 +00:00
Tarek Ziadé dda92f7f02 Issue #5052: make Distutils compatible with 2.3 again. 2009-02-27 12:53:34 +00:00
Raymond Hettinger b31a6d0949 Give mapping views a usable repr. 2009-02-27 08:09:47 +00:00
Brett Cannon ac10be365e Fix a bug where code was trying to index an int. Left over from the situation
from using str.rpartition to str.rindex.

Closes Issue5213.
2009-02-27 03:38:28 +00:00
Tarek Ziadé b5fc89ee57 removed unused import 2009-02-26 23:44:00 +00:00
Benjamin Peterson b3dd5485da remove deprecated symtable.Symbol methods 2009-02-26 19:07:18 +00:00
Tarek Ziadé e3bc0eff25 Fixed #5316 : test failure in test_site 2009-02-25 22:29:27 +00:00
Brett Cannon b7019d8e9e Expand upon test_site.test_s_option to try to debug its failure. 2009-02-24 22:01:02 +00:00
Raymond Hettinger 8c56f8890e Backport 69934: Register xrange() as a Sequence. 2009-02-24 12:23:23 +00:00
Neil Schemenauer c9332fada6 Fix call to os.waitpid, it does not take keyword args. 2009-02-24 04:23:25 +00:00
Tarek Ziadé 11b34d07d8 more test coverage 2009-02-23 12:41:29 +00:00
Tarek Ziadé 7b47172bec Removing unused __main__ sections 2009-02-22 20:15:41 +00:00
Tarek Ziadé 28bba74b7f removing map and lambda usage, so the test is similar to py3k's branch one 2009-02-22 20:11:46 +00:00
Tarek Ziadé 90b7d56d91 moved distutils.text_file tests into a real unittest class 2009-02-22 19:58:12 +00:00
Antoine Pitrou b03f532fe5 Revert debugging statements, culprit is possibly test_distutils (see #5316) 2009-02-22 18:20:46 +00:00
Antoine Pitrou 13d1690ecd Try to make sense of the test_site buildbot failures 2009-02-22 17:25:52 +00:00
Mark Dickinson 3e4caeb3bf Issue #5341: Fix a variety of spelling errors. 2009-02-21 20:27:01 +00:00
Raymond Hettinger be9b765c07 Speedup and simplify negative counter using count's new step argument. 2009-02-21 08:58:42 +00:00
Raymond Hettinger aa681c7b99 Fix keyword arguments for itertools.count().
Step arg without a start arg was ignored.
2009-02-21 07:17:22 +00:00
Mark Dickinson 2752e9b527 Issue #5295: Typos in turtle.py 2009-02-20 20:42:53 +00:00
Collin Winter 8725dce2ae Issue 5176: special-case string formatting in BINARY_MODULO implementation. This shows a modest (1-3%) speed-up in templating systems, for example. 2009-02-20 19:30:41 +00:00
Vinay Sajip 1a0d2befea #5287: Add exception handling around findCaller() call to help out IronPython. 2009-02-19 12:31:32 +00:00
Raymond Hettinger 8f9a1eee0d Inline coefficients in gamma(). Add reflection formula. Add comments. 2009-02-19 09:50:24 +00:00
Raymond Hettinger f9bce83e71 Add some cross-references to the docs. Simplify the python code equivalent for izip(). Supply an optional argument for the nth() recipe. 2009-02-19 05:34:35 +00:00
Raymond Hettinger 182edaefb5 Add keyword arg support to itertools.repeat(). 2009-02-19 02:38:25 +00:00
Raymond Hettinger 2e2909f584 Add keyword arg support to itertools.compress(). 2009-02-19 02:15:14 +00:00
Tarek Ziadé 0e5001eff9 fixed the data_files inclusion behavior 2009-02-17 23:06:51 +00:00
Hirokazu Yamamoto 17a837e4db Issue #5282: Fixed mmap resize on 32bit windows and unix. When offset > 0,
The file was resized to wrong size.
2009-02-17 13:17:26 +00:00
Hirokazu Yamamoto f6bbd0e71d Issue #5292: Fixed mmap crash on its boundary access m[len(m)]. 2009-02-17 10:12:10 +00:00
Tarek Ziadé f68b5b8046 #2279 added the plain path case for data_files 2009-02-17 09:42:44 +00:00