Commit Graph

5998 Commits

Author SHA1 Message Date
Antoine Pitrou 7430989cda Isue #5084: unpickling now interns the attribute names of pickled objects,
saving memory and avoiding growth in size of subsequent pickles. Proposal
and original patch by Jake McGuire.
2009-05-02 21:13:23 +00:00
Michael Foord e2fb98f467 Add addCleanup and doCleanups to unittest.TestCase.
Closes issue 5679.

Michael Foord
2009-05-02 20:15:05 +00:00
Andrew M. Kuchling 420d4eb1f3 #1607951: Make mailbox.Maildir re-read the directories less frequently.
This is done by recording the current time -1sec, and not re-reading unless
the directory mod. times are >= the recorded time.
2009-05-02 19:17:28 +00:00
Gregory P. Smith 6e7bdde2c8 Convert test method names to PEP8 style. 2009-05-02 18:58:21 +00:00
Benjamin Peterson 6282169142 remove py3k compat code 2009-05-02 17:33:01 +00:00
Benjamin Peterson d7e8e3444f don't let sys.argv be used in the tests 2009-05-02 16:24:37 +00:00
Michael Foord 829f6b8052 Adds an exit parameter to unittest.main(). If False main no longer
calls sys.exit.

Closes issue 3379.

Michael Foord
2009-05-02 11:43:06 +00:00
Antoine Pitrou 1fc0231a22 Issue #3002: `shutil.copyfile()` and `shutil.copytree()` now raise an
error when a named pipe is encountered, rather than blocking infinitely.
2009-05-01 20:55:35 +00:00
Gregory P. Smith 1d499265e0 Adds the ipaddr module to the standard library. Issue #3959.
Based off of subversion r69 from http://code.google.com/p/ipaddr-py/

This code is 2to3 safe, I'll merge it into py3k later this afternoon.
2009-05-01 19:59:52 +00:00
Walter Dörwald 6733bed57e Make test.test_support.EnvironmentVarGuard behave like a dictionary.
All changes are mirrored to the underlying os.environ dict, but rolled back
on exit from the with block.
2009-05-01 17:35:37 +00:00
Eric Smith 9139cc6a3b Issue #1588: Add complex.__format__. 2009-04-30 00:58:58 +00:00
Benjamin Peterson 7c7250da45 make sure to close file 2009-04-30 00:06:33 +00:00
Benjamin Peterson a9b4d4777a make sure mode is removable while cleaning up test droppings 2009-04-29 22:44:15 +00:00
Benjamin Peterson 9c6fc5187f fix test_shutil on ZFS #5676 2009-04-29 22:43:35 +00:00
Mark Dickinson 61a0d05291 Backport some of the float formatting tests from py3k. 2009-04-29 21:57:15 +00:00
Mark Dickinson 92fcc9c991 Issue #5864: format(1234.5, '.4') gives misleading result
(Backport of r72109 from py3k.)
2009-04-29 20:41:00 +00:00
R. David Murray 0f457e5825 More aifc tests. 2009-04-29 20:15:18 +00:00
R. David Murray 971b1b100b Now that we've got a test_aifc, add a few tests. 2009-04-29 13:51:44 +00:00
R. David Murray 25b4add5b0 Fix issue 2245. aifc now skips any chunk type it doesn't actually
process instead of throwing errors for anything not in an explicit
skip list.  This is per this spec: http://www.cnpbagwell.com/aiff-c.txt.
Spec reference and test sound file provided by Santiago Peresón, fix
based on patch by Hiroaki Kawai.
2009-04-29 13:17:37 +00:00
Walter Dörwald 4b965f6ab1 Use test.test_support.EnvironmentVarGuard where tests change environment vars. 2009-04-26 20:51:44 +00:00
Walter Dörwald 4c69da2879 Fix typo. 2009-04-26 19:11:43 +00:00
Martin v. Löwis 99f277933e Issue #4971: Fix titlecase for characters that are their own
titlecase, but not their own uppercase.
2009-04-26 00:53:18 +00:00
Eric Smith 068f06568b Issue #5835, deprecate PyOS_ascii_formatd.
If anyone wants to clean up the documentation, feel free. It's my first documentation foray, and it's not that great.

Will port to py3k with a different strategy.
2009-04-25 21:40:15 +00:00
Walter Dörwald 5d98ec76bb Issue #5828 (Invalid behavior of unicode.lower): Fixed bogus logic in
makeunicodedata.py and regenerated the Unicode database (This fixes
u'\u1d79'.lower() == '\x00').
2009-04-25 14:03:16 +00:00
Walter Dörwald a145317be9 Issue #5837: Certain sequences of calls to set() and unset() for
support.EnvironmentVarGuard objects restored the environment variables
incorrectly on __exit__.

Fix this by recording the initial value of each environment variable on the
first access in set() or unset().
2009-04-25 12:15:07 +00:00
Mark Dickinson 0a6501bf56 Fix typo in complex parsing code; expand tests. 2009-04-25 09:47:00 +00:00
Benjamin Peterson 5083dc552b fix a segfault when setting __class__ in __del__ #5283 2009-04-25 00:41:22 +00:00
Mark Dickinson 0badeef93e Remove unnecessary double negative 2009-04-24 16:37:22 +00:00
Mark Dickinson 6ab635a4f4 Issue #5593: Use more robust test for double-rounding in test_fsum.
While we're at it, use new unittest.skipUnless decorator to
implement skipping for that test.
2009-04-24 16:34:14 +00:00
Mark Dickinson 4af8e745c4 Issue #5812: The two-argument form of the Fraction constructor
now accepts arbitrary Rational instances.
2009-04-24 13:56:07 +00:00
Mark Dickinson 95bc980d9e Issue #5816:
- simplify parsing and printing of complex numbers
 - make complex(repr(z)) round-tripping work for complex
   numbers involving nans, infs, or negative zeros
 - don't accept some of the stranger complex strings
   that were previously allowed---e.g., complex('1..1j')
2009-04-24 12:46:53 +00:00
Mark Dickinson 8100bd8431 Issue #5812: make Fraction('1e-6') valid. Backport of r71806. 2009-04-22 18:15:25 +00:00
Eric Smith ebafbb705c Fixed issue 5782: formatting with commas didn't work if no specifier type code was given. 2009-04-22 16:20:47 +00:00
Nick Coghlan 5533ff6a2e Issue 5354: Change API for import_fresh_module() to better support test_warnings use case (also fixes some bugs in the original implementation) 2009-04-22 15:26:04 +00:00
Eric Smith aca19e6a74 Backport of some of the work in r71665 to trunk. This reworks much of
int, long, and float __format__(), and it keeps their implementation
in sync with py3k.

Also added PyOS_double_to_string. This is the "fallback" version
that's also available in trunk, and should be kept in sync with that
code. I'll add an issue to document PyOS_double_to_string in the C
API.

There are many internal cleanups. Externally visible changes include:

- Implement PEP 378, Format Specifier for Thousands Separator, for
  floats, ints, and longs.

- Issue #5515: 'n' formatting for ints, longs, and floats handles
  leading zero formatting poorly.

- Issue #5772: For float.__format__, don't add a trailing ".0" if
  we're using no type code and we have an exponent.
2009-04-22 13:29:05 +00:00
R. David Murray 95fb46c977 Restore skips of posix and pty tests on Windows by calling the
test_support.import_module on the appropriate modules
before any other imports.
2009-04-21 13:06:04 +00:00
Senthil Kumaran 7c2867fcb1 Fix for the Issue918368 - urllib doesn't correct server returned urls 2009-04-21 03:24:19 +00:00
Mark Dickinson a7e734fcee Nit: integer division should use //, not / 2009-04-20 21:41:04 +00:00
Mark Dickinson 6736cf8d20 Issue #3166: Make long -> float (and int -> float) conversions
correctly rounded, using round-half-to-even.  This ensures that the
value of float(n) doesn't depend on whether we're using 15-bit digits
or 30-bit digits for Python longs.
2009-04-20 21:13:33 +00:00
Benjamin Peterson accb3d0014 move test to a more appropiate one 2009-04-18 21:03:10 +00:00
Benjamin Peterson d4d400cb8a try to initalize all builtin types with PyType_Ready to avoid problems like #5787 2009-04-18 20:12:47 +00:00
Mark Dickinson 1bdf7e9cab Issue #1869: Fix a couple of minor round() issues. 2009-04-18 14:59:42 +00:00
Vinay Sajip 74f045088d Issue #5768: Change to Unicode output logic and test case for same. 2009-04-16 19:07:37 +00:00
Benjamin Peterson 99d36f1563 call __float__ on str subclasses #5759
tests by R. David Murray
2009-04-15 21:26:36 +00:00
R. David Murray dcad046d39 Adjust test_asyncore to account for intentional asyncore behavior change
introduced by r70934 that was causing a test failure when run under -O.
2009-04-13 01:06:46 +00:00
Benjamin Peterson 457fefc3f8 remove useless import 2009-04-12 20:24:56 +00:00
Georg Brandl 21cf5ee6fd #5741: dont disallow double percent signs in SafeConfigParser.set() keys. 2009-04-12 17:24:11 +00:00
R. David Murray 5331d4b4de Make test_asyncore tests match code changes introduced by the
fix to Issue1161031, refactoring the test to simplify it in
the process.
2009-04-11 17:52:56 +00:00
Nick Coghlan cd2e7042ae Issue 5354: Provide a standardised testing mechanism for doing fresh imports of modules, including the ability to block extension modules in order to test the pure Python fallbacks 2009-04-11 13:31:31 +00:00
R. David Murray 0374a82f75 Issue #2170: refactored xml.dom.minidom.normalize, increasing both
its clarity and its speed.
2009-04-09 21:54:50 +00:00
Collin Winter f8089c7789 Issue 5665: add more pickling tests.
- Add tests for the module-level load() and dump() functions.
- Add tests for cPickle's internal data structures, stressing workloads
with many gets/puts.
- Add tests for the Pickler and Unpickler classes, in particular the
memo attribute.
- test_xpickle is extended to test backwards compatibility with Python
2.4, 2.5 and 2.6 by round-tripping pickled objects through a worker
process. This is guarded with a regrtest -u xpickle resource.
2009-04-09 16:46:46 +00:00
Jack Diederich 7f9bb9142e - Make timing assertions very generous (a la test_timeout.py)
- Break the gc cycle in negotiation tests
- test the different guarantees of read_lazy and read_very_lazy
2009-04-07 23:56:57 +00:00
Jack Diederich 3b2312ee5c eliminate more race conditions in telnetlib tests 2009-04-07 20:22:59 +00:00
Vinay Sajip 14bf0a0a37 Issue #5695: Minor tweak to improve the code as suggested by Brett Cannon and as implemented in the Py3K branch. 2009-04-07 17:18:24 +00:00
Benjamin Peterson dda7b1990b revert unrelated change to test_telnetlib 2009-04-07 16:03:04 +00:00
Benjamin Peterson a1b821cf60 fix since difference formating of SyntaxErrors 2009-04-07 15:52:05 +00:00
Benjamin Peterson 52b9620c19 fix syntax tests after formatting change 2009-04-07 15:15:04 +00:00
Gregory P. Smith 923ba361d8 - Issue #2254: Fix CGIHTTPServer information disclosure. Relative paths are
now collapsed within the url properly before looking in cgi_directories.
2009-04-06 06:33:26 +00:00
Jack Diederich 183028ed79 test the telnetlib.Telnet interface more thoroughly 2009-04-06 02:08:44 +00:00
Gregory P. Smith 6d30793cf2 Fixes issue5705: os.setuid() and friends did not accept the same range of
values that pwd.getpwnam() returns.
2009-04-05 23:43:58 +00:00
Michael Foord f2dfef1637 Adding assertIs and assertIsNot methods to unittest.TestCase
Issue #2578
2009-04-05 19:19:28 +00:00
Georg Brandl 3f0ef20269 #5471: fix expanduser() for $HOME set to "/". 2009-04-05 14:48:49 +00:00
Georg Brandl dc4a77159b #1326077: fix traceback formatting of SyntaxErrors. This fixes two differences with formatting coming from Python: a) the reproduction of location details in the error message if no line text is given, b) the prefixing of the last line by one space. 2009-04-05 14:24:52 +00:00
Vinay Sajip 1e566cec6f Issue #5695: Moved logging.captureWarnings() call inside with statement in WarningsTest.test_warnings. 2009-04-05 11:06:24 +00:00
Hirokazu Yamamoto 772033f08c No behavior change. 2009-04-04 17:20:05 +00:00
Raymond Hettinger 756ab67a98 Have namedtuple's field renamer assign names that
are consistent with the corresponding tuple index.
2009-04-02 22:25:40 +00:00
Antoine Pitrou 789be0c0a0 Issue #2396: backport the memoryview object. 2009-04-02 21:18:34 +00:00
Mark Dickinson 48e3fd240f sys.long_info attributes should be ints, not longs 2009-04-02 18:39:37 +00:00
R. David Murray 52720c5455 Add missing iteritems() call to the for loop in mailbox.MH.get_message().
Fixes issue2625.
2009-04-02 14:05:35 +00:00
Michael Foord e2942d073d Store the functions in the _type_equality_funcs as wrapped objects that are deep copyable.
This allows for the deep copying of TestCase instances.

Issue 5660
2009-04-02 05:51:54 +00:00
Jesse Noller 7152f6d915 Add custom initializer argument to multiprocess.Manager*, courtesy of lekma 2009-04-02 05:17:26 +00:00
Michael Foord 345b2fe21e Better exception messages for unittest assert methods.
- unittest.assertNotEqual() now uses the inequality operator (!=) instead
  of the equality operator.

- Default assertTrue and assertFalse messages are now useful.

- TestCase has a longMessage attribute. This defaults to False, but if set to True
  useful error messages are shown in addition to explicit messages passed to assert methods.

Issue #5663
2009-04-02 03:20:38 +00:00
Senthil Kumaran c730a6a123 Fixing the issue4860. Escaping embedded '"' character in js_output() method of Morsel. 2009-04-02 03:00:34 +00:00
Benjamin Peterson 3633c4f7d2 handle SEEK_ constants in test_io 2009-04-02 01:03:17 +00:00
R. David Murray 3864459196 Add tests checking the CSV module's ability to handle
embedded newlines in quoted field values.
2009-04-01 21:26:18 +00:00
Senthil Kumaran 20d114cad2 Fix for issue5040. Adding test for Content-Length 2009-04-01 20:26:33 +00:00
Jack Diederich 2ecd3c36b5 bounds check arguments to mmap.move(). All of them. Really.
fixes crasher on OS X 10.5
2009-04-01 20:26:13 +00:00
Brett Cannon ce3d221447 test_warnings ironically had a single test that was not protecting the warnings
filter and was resetting it.
2009-04-01 20:25:48 +00:00
Brett Cannon 2da4d628a5 test_logging was blindly clearing the warnings filter. This caused
PendingDeprecationWarnings to be spewed all over by unittest.failIf*(). Fix
moves over to using warnings.catch_warning to protect the warnings filter.
2009-04-01 19:57:10 +00:00
Raymond Hettinger 66c4a6b51c Issue #5647: MutableSet.__iand__() no longer mutates self during iteration. 2009-04-01 18:50:56 +00:00
Brett Cannon 15ba4dae5a _warnings was importing itself to get an attribute. That's bad if warnings gets
called in a thread that was spawned by an import itself.

Last part to close #1665206.
2009-04-01 18:03:59 +00:00
Georg Brandl 61fce3877c Fix test_xmlrpc and make the CGI handler work with no CONTENT_LENGTH. 2009-04-01 15:23:43 +00:00
Jesse Noller 02cb0eb231 Fix multiprocessing.event to match the new threading.Event API 2009-04-01 03:45:50 +00:00
R. David Murray a83da3507f Fix issue 2522. locale.format now checks that it is passed
exactly one pattern, which avoids mysterious errors where it
had seemed to fail to do localization.
2009-04-01 03:21:43 +00:00
Josiah Carlson bb94d43dcd Fix for failing asyncore tests. 2009-04-01 01:28:11 +00:00
Georg Brandl d8fb6ac9da Issue #5635: Fix running test_sys with tracing enabled. 2009-04-01 00:04:33 +00:00
Jack Diederich d60c29ed8b #5228: add pickle support to functools.partial 2009-03-31 23:46:48 +00:00
R. David Murray 840ac926c5 Fix Windows test skip error revealed by buildbot. Also a comment spelling
correction in a previously fixed test.
2009-03-31 23:45:39 +00:00
Georg Brandl 0c7b2c9c19 #1651995: fix _convert_ref for non-ASCII characters. 2009-03-31 22:11:53 +00:00
Benjamin Peterson d906ea62c8 fix Thread.ident when it is the main thread or a dummy thread #5632 2009-03-31 21:34:42 +00:00
Georg Brandl ef660e8e50 #1674032: return value of flag from Event.wait(). OKed by Guido. 2009-03-31 20:41:08 +00:00
Hirokazu Yamamoto 1d7d5325be Issue #5387: Fixed mmap.move crash by integer overflow. (take2) 2009-03-31 20:14:04 +00:00
R. David Murray 612f1d5f48 Remove the regrtest check that turns any ImportError into a skipped test.
Hopefully all modules whose imports legitimately result in a skipped
test have been properly wrapped by the previous commits.
2009-03-31 19:49:15 +00:00
R. David Murray bdeacba51b Improve test_support.import_module docstring, remove
deprecated flag from get_attribute since it isn't likely
to do anything useful.
2009-03-31 19:33:15 +00:00
R. David Murray 73fba6915a Delete out-of-date and little-known README from the test
directory by consensus of devs at pycon sprint.
2009-03-31 19:31:17 +00:00
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
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