summaryrefslogtreecommitdiffstats
path: root/Lib/test
Commit message (Collapse)AuthorAgeFilesLines
* Generalize operator.indexOf (PySequence_Index) to work with anyTim Peters2001-09-081-0/+41
| | | | | | | | | | iterable object. I'm not sure how that got overlooked before! Got rid of the internal _PySequence_IterContains, introduced a new internal _PySequence_IterSearch, and rewrote all the iteration-based "count of", "index of", and "is the object in it or not?" routines to just call the new function. I suppose it's slower this way, but the code duplication was getting depressing.
* It appears that unittest was changed to stop hoarding raw exception data,Tim Peters2001-09-081-4/+1
| | | | | | | | | saving instead a traceback string, but test_support's run_unittest was still peeking into unittest internals and trying to pick apart unittest's errors and failures vectors as if they contained exc_info() tuples instead of strings. Whatever, when a unittest-based test failed, test_support blew up. I'm not sure this is the right way to fix it; it simply gets me unstuck.
* Fix typo in error reporting. This doesn't need to go into the releaseTim Peters2001-09-071-1/+1
| | | | branch (if it ever gets to the typo, the test is failing anyway).
* Reverting to rev 1.2. Apparently gcc doesn't use the extended-precisionTim Peters2001-09-061-3/+16
| | | | | | | | capabilities of the Pentium FPU, so what should have been (and were on Windows) exact results got fuzzy. Then it turns out test_support.fcmp() isn't tolerant of tiny errors when *one* of the comparands is 0, but test_complex's old check_close_real() is. Rather than fix gcc <wink>, easier to revert this test and revisit after the release.
* Rewrite to use test_support's fine fcmp instead -- I didn't know thatTim Peters2001-09-061-16/+3
| | | | existed when I wrote this test.
* Added some underflow-to-0.0 long/long true division tests.Tim Peters2001-09-061-0/+6
|
* Rename 'getset' to 'property'.Guido van Rossum2001-09-063-19/+19
|
* Two small changes to the resource usage option:Guido van Rossum2001-09-062-4/+5
| | | | | | | | (1) Allow multiple -u options to extend each other (and the initial value of use_resources passed into regrtest.main()). (2) When a test is run stand-alone (not via regrtest.py), needed resources are always granted.
* Added tests for key deletion for both Weak*Dictionary flavors.Fred Drake2001-09-061-0/+22
| | | | This covers regression on SF bug #458860.
* Skip instead of fail this test if the socket module has no sslGuido van Rossum2001-09-061-0/+3
| | | | support.
* Dubious assumptions:Tim Peters2001-09-061-5/+10
| | | | | | | | | | | 1. That seeking beyond the end of a file increases the size of a file. 2. That files so extended are magically filled with null bytes. I find no support for either in the C std, and #2 in particular turns out not to be true on Win32 (you apparently see whatever trash happened to be on disk). Left #1 intact, but changed the test to check only bytes it explicitly wrote. Also fiddled the "expected" vs "got" failure reports to consistently use repr (%r) -- they weren't readable otherwise.
* Enable large file support on Win32 systems.Tim Peters2001-09-061-4/+4
| | | | | | | | | Curious: the MS docs say stati64 etc are supported even on Win95, but Win95 doesn't support a filesystem that allows partitions > 2 Gb. test_largefile: This was opening its test file in text mode. I have no idea how that worked under Win64, but it sure needs binary mode on Win98. BTW, on Win98 test_largefile runs quickly (under a second).
* Rework the way we try to check for libm overflow, given that C99 no longerTim Peters2001-09-051-1/+1
| | | | | | | | | | | | | | | requires that errno ever get set, and it looks like glibc is already playing that game. New rules: + Never use HUGE_VAL. Use the new Py_HUGE_VAL instead. + Never believe errno. If overflow is the only thing you're interested in, use the new Py_OVERFLOWED(x) macro. If you're interested in any libm errors, use the new Py_SET_ERANGE_IF_OVERFLOW(x) macro, which attempts to set errno the way C89 said it worked. Unfortunately, none of these are reliable, but they work on Windows and I *expect* under glibc too.
* LongReprTest fails on the Mac because it uses filenames with more thanJack Jansen2001-09-051-1/+2
| | | | | | 32 characters per component. This makes mkdir() calls and such fail with EINVAL. For now I am disabling the test on the Mac, and I'll open a bugreport.
* Remove a debug print left in the code by Fred.Guido van Rossum2001-09-051-1/+0
|
* Patch #449815: Set filesystemencoding based on CODESET.Martin v. Löwis2001-09-051-1/+15
|
* Patch #453627: Adds a list of tests that are expected to be skipped for ↵Martin v. Löwis2001-09-051-0/+24
| | | | UnixWare 7.x systems.
* Add a test for the final branch in repr.Repr.repr1(), which deals withGuido van Rossum2001-09-051-0/+5
| | | | a default repr() that's longer than 20 characters.
* Return reasonable results for math.log(long) and math.log10(long) (we wereTim Peters2001-09-051-3/+37
| | | | | | getting Infs, NaNs, or nonsense in 2.1 and before; in yesterday's CVS we were getting OverflowError; but these functions always make good sense for positive arguments, no matter how large).
* Revert one of the "division fixes" in test_long. It intends to try bothTim Peters2001-09-041-2/+2
| | | | | | "/" and "//", and doesn't really care what they *mean*, just that both are tried (and that, whatever they mean, they act similarly for int and long arguments).
* The first batch of changes recommended by the fixdiv tool. These areGuido van Rossum2001-09-0410-20/+20
| | | | | mostly changes of / operators into //. Once or twice I did more or less than recommended.
* HTMLParser is allowed to be more strict than sgmllib, so let's notFred Drake2001-09-041-6/+1
| | | | | change their basic behavior: When parsing something that cannot possibly be valid in either HTML or XHTML, raise an exception.
* Suppressing all DeprecationWarning messages was a bit of a problem forGuido van Rossum2001-09-041-3/+3
| | | | | the -Qwarnall option, so I've changed this to only filter out the one warning that's a problem in practice.
* Enhanced the test for DOCTYPE declarations, added a test for dealing withFred Drake2001-09-041-14/+23
| | | | broken declaration-like things.
* Whitespace normalization.Tim Peters2001-09-043-3/+2
|
* Fixed a typo and added more tests.Tim Peters2001-09-041-1/+12
|
* Change long/long true division to return as many good bits as it can;Tim Peters2001-09-041-0/+38
| | | | e.g., (1L << 40000)/(1L << 40001) returns 0.5, not Inf or NaN or whatever.
* Raise OverflowError when appropriate on long->float conversion. Most ofTim Peters2001-09-041-0/+37
| | | | | | | the fiddling is simply due to that no caller of PyLong_AsDouble ever checked for failure (so that's fixing old bugs). PyLong_AsDouble is much faster for big inputs now too, but that's more of a happy consequence than a design goal.
* builtin_dir(): Treat classic classes like types. Use PyDict_Keys insteadTim Peters2001-09-042-11/+32
| | | | | | | | | | | | | | of PyMapping_Keys because we know we have a real dict. Tolerate that objects may have an attr named "__dict__" that's not a dict (Py_None popped up during testing). test_descr.py, test_dir(): Test the new classic-class behavior; beef up the new-style class test similarly. test_pyclbr.py, checkModule(): dir(C) is no longer a synonym for C.__dict__.keys() when C is a classic class (looks like the same thing that burned distutils! -- should it be *made* a synoym again? Then it would be inconsistent with new-style class behavior.).
* Restore a line deleted by mistake.Tim Peters2001-09-031-0/+2
|
* New restriction on pow(x, y, z): If z is not None, x and y must be ofTim Peters2001-09-034-25/+41
| | | | | integer types, and y must be >= 0. See discussion at http://sf.net/tracker/index.php?func=detail&aid=457066&group_id=5470&atid=105470
* Make dir() wordier (see the new docstring). The new behavior is a mixedTim Peters2001-09-033-11/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | bag. It's clearly wrong for classic classes, at heart because a classic class doesn't have a __class__ attribute, and I'm unclear on whether that's feature or bug. I'll repair this once I find out (in the meantime, dir() applied to classic classes won't find the base classes, while dir() applied to a classic-class instance *will* find the base classes but not *their* base classes). Please give the new dir() a try and see whether you love it or hate it. The new dir([]) behavior is something I could come to love. Here's something to hate: >>> class C: ... pass ... >>> c = C() >>> dir(c) ['__doc__', '__module__'] >>> The idea that an instance has a __doc__ attribute is jarring (of course it's really c.__class__.__doc__ == C.__doc__; likewise for __module__). OTOH, the code already has too many special cases, and dir(x) doesn't have a compelling or clear purpose when x isn't a module.
* Made a doctest out of the examples in Guido's type/class tutorial.Tim Peters2001-09-031-0/+498
|
* Make dictionary() a real constructor. Accepts at most one argument, "aTim Peters2001-09-021-1/+51
| | | | | | | | | | | | mapping object", in the same sense dict.update(x) requires of x (that x has a keys() method and a getitem). Questionable: The other type constructors accept a keyword argument, so I did that here too (e.g., dictionary(mapping={1:2}) works). But type_call doesn't pass the keyword args to the tp_new slot (it passes NULL), it only passes them to the tp_init slot, so getting at them required adding a tp_init slot to dicts. Looks like that makes the normal case (i.e., no args at all) a little slower (the time it takes to call dict.tp_init and have it figure out there's nothing to do).
* Whitespace normalization (tabs -> 4 spaces) in the Mac expectations.Guido van Rossum2001-09-021-35/+35
|
* Correct name mangling algorithm, and add a comment.Guido van Rossum2001-08-311-2/+1
|
* SF bug #456621: normpath on Win32 not collapsing c:\\..Tim Peters2001-08-301-0/+24
| | | | | | I actually rewrote normpath quite a bit: it had no test cases, and as soon as I starting writing some I found several cases that didn't make sense.
* metaclass(): add some more examples of metaclasses, including oneGuido van Rossum2001-08-301-0/+104
| | | | | | using cooperative multiple inheritance. inherits(): add a test for subclassing the unicode type.
* SF patch #455966: Allow leading 0 in float/imag literals.Tim Peters2001-08-301-0/+44
| | | | Consequences for Jython still unknown (but raised on Jython-Dev).
* Add testcases for inheritance from tricky builtins (numbers, strings,Guido van Rossum2001-08-301-0/+74
| | | | tuples).
* Revert the previous patch to test_pow.py and move the test to test_unary.pyFred Drake2001-08-302-10/+8
| | | | | based on a suggestion from Tim Peters; also make sure that we're really doing exponentiation and not multiplication.
* Added a regression test for the negation-of-exponentiation optimizationFred Drake2001-08-301-0/+11
| | | | bug from compile.c. (SF bug #456756.)
* Add a new function imp.lock_held(), and use it to skip test_threaded_importTim Peters2001-08-301-4/+6
| | | | when that test is doomed to deadlock.
* Workaround by Tim Peters to skip this test if run from test.autotest,Jack Jansen2001-08-291-1/+5
| | | | | in which case it will hang because the import lock is already held by the main thread.
* Add tests for augmented floor divisionJeremy Hylton2001-08-292-0/+27
|
* Now that int is subclassable, have to change a test that tests forGuido van Rossum2001-08-291-2/+2
| | | | non-subclassability. (More tests for number subclassing should follow.)
* marshal.c r_long64: When reading a TYPE_INT64 value on a box with 32-bitTim Peters2001-08-291-0/+41
| | | | ints, convert to PyLong (rather than throwing away the high-order 32 bits).
* pickle.py, load_int(): Match cPickle's just-repaired ability to unpickleTim Peters2001-08-281-0/+15
| | | | | | | | 64-bit INTs on 32-bit boxes (where they become longs). Also exploit that int(str) and long(str) will ignore a trailing newline (saves creating a new string at the Python level). pickletester.py: Simulate reading a pickle produced by a 64-bit box.
* Update an email address.Barry Warsaw2001-08-281-10/+10
|
* Fix the test again due to fewer calls to __getattr__.Guido van Rossum2001-08-281-3/+1
|