Commit Graph

34466 Commits

Author SHA1 Message Date
Jeremy Hylton 77553ab531 Fix test for new version of urllib that uses HTTPConnection directly.
Changes the way the httplib classes are stubbed out.
2007-08-04 19:23:09 +00:00
Jeremy Hylton 39b198d835 Change urllib to use HTTPConnection rather than old HTTP class.
The HTTP class is a backwards compatibility layer for the Python 1.5
API.  (The only remaining use in the std library is xmlrpclib.)

The current change makes urllib issue HTTP/1.0 requests with
HTTPConnection, because is accesses HTTPResponse.fp directly instead
of using the read() method.  Using fp directly interacts poorly with
persistent connections.  There are probably better solutions than the
current one, but this is a start.
2007-08-04 19:22:00 +00:00
Guido van Rossum f066c1ba37 Make test_tokenize really pass -- don't add extra output. 2007-08-04 17:55:43 +00:00
Guido van Rossum cfbbf48e3e Make test_tokenize pass again:
Add code to test_roundtrip() that figures out the encoding
from the first two lines of the file.
(We need to refactor this again to make it available to
all places that need this, e.g. linecache.py.)
2007-08-04 17:43:15 +00:00
Guido van Rossum 1e2b760475 Fix an obvious bug caused by a switch to Unicode.
However, this will need to be fixed further to allow non-ASCII letters in
names; leaving this to MvL.
2007-08-04 16:43:59 +00:00
Jeremy Hylton 3e18615496 Fix test: readline() now returns bytes 2007-08-04 03:46:11 +00:00
Jeremy Hylton 66dc8c59be Fix tests that tried to sneak strings through httplib.
The httplib interface returns bytes for now.
2007-08-04 03:42:26 +00:00
Jeremy Hylton 04319c78d6 Make sure LineAndFileWrapper gets bytes() as its first argument.
This change fixes a test in test_urllib.
2007-08-04 03:41:19 +00:00
Jeremy Hylton 4e7855d7fd Use BytesIO instead of StringIO. 2007-08-04 03:34:03 +00:00
Jeremy Hylton 0ee5eeb8ff Fix several more paths from the SSL code.
In particular, watch out for comparing b"" to "".  They're not equal,
but you can start at the code asking whether buf == "" for a long time
before realizing that it will never be True.
2007-08-04 03:25:17 +00:00
Jeremy Hylton 6252083f5f Change read() on SSL socket to return bytes. 2007-08-04 02:58:42 +00:00
Jeremy Hylton 97043c3c02 HTTPResponse should not inherit from io.IOBase.
I'm not sure why I thought it should originally, but it introduces an
__del__() method on the response which cause the close() to be called
too soon using the HTTP compat class.

Also, remove some stale comments.  The HTTPResponse calls makefile()
immediately, so there is no risk of it closing the socket.
2007-08-04 02:34:24 +00:00
Guido van Rossum c2de7c03a0 Get rid of a bogus assert when recv_into() is called with a zero-length
buffer.  We just return 0 in this case now, like for all zero-length
reads.
2007-08-03 22:27:51 +00:00
Guido van Rossum 4a7fd90d9c Fix failure do to outlawing complex floordiv/mod. 2007-08-03 21:15:23 +00:00
Jeremy Hylton ec0c508b0a Fix an absurdly invasive test.
Checks that an io object somewhere in the stack of wrappers is
actually closed.  --This line, and those below, will be ignored--

M    test_urllib2net.py
2007-08-03 21:03:02 +00:00
Jeremy Hylton 8fff7924a4 Fix tests to use bytes() where the actual sockets return bytes().
Use io.BytesIO() instead of StringIO.StringIO().  FakeSocket still
accepts regular strings and coverts them to bytes internally.
2007-08-03 20:56:14 +00:00
Guido van Rossum 9648d62fd5 Make test_complex pass again now that floordiv and mod are illegal. 2007-08-03 20:40:44 +00:00
Jeremy Hylton 5accbdb812 Make sure socket.close() doesn't interfere with socket.makefile().
If a makefile()-generated object is open and its parent socket is
closed, the parent socket should remain open until the child is
closed, too.  The code to support this is moderately complex and
requires one extra slots in the socket object.

This change fixes httplib so that several urllib2net test cases pass
again.

Add SocketCloser class to socket.py, which encapsulates the
refcounting logic for sockets after makefile() has been called.

Move SocketIO class from io module to socket module.  It's only use is
to implement the raw I/O methods on top of a socket to support
makefile().

Add unittests to test_socket to cover various patterns of close and
makefile.
2007-08-03 20:40:09 +00:00
Jeremy Hylton d2ef864f81 Treat HTTP status line as ISO-8859-1 as in httplib module. 2007-08-03 20:32:27 +00:00
Jeremy Hylton cf2f41919c Hack: Fix some test_urllib2.net tests by getting them access to the
raw socket so they can check the timeout value.  Should change the
code under test to expose the timeout in a more direct way.
2007-08-03 20:31:38 +00:00
Jeremy Hylton fb35f65e8b A few local changes for consistency of string literals. 2007-08-03 20:30:33 +00:00
Guido van Rossum c0f2d2d345 SF patch# 1762940 by Joe Gregorio.
Fix test_cookielib and test_urllib2.
(The changes to urllib make urllib.quote() work correctly for Unicode
strings; but they don't fix test_urllib.)
2007-08-03 19:19:24 +00:00
Guido van Rossum 15863ea07a SF patch# 1764815 by Paul Colomiets.
Fix for test_socketserver.
Use io.BytesIO instead of io.StringIO, and adjust tests.
2007-08-03 19:03:39 +00:00
Guido van Rossum ad8d30092c SF patch# 1766592 by Paul Colomiets.
Fix test_zipimport.
2007-08-03 18:40:49 +00:00
Collin Winter 6afaeb757a Convert print statements to function calls in Tools/. 2007-08-03 17:06:41 +00:00
Jeremy Hylton e5d0e8431f Make consistent use of "" for string literals in new classes. 2007-08-03 13:45:24 +00:00
Jeremy Hylton 811fc14935 Fix status line parsing for http response. 2007-08-03 13:30:02 +00:00
Guido van Rossum 4737482fad Add a default __prepare__() method to 'type', so it can be called
using super().  (See recent conversation on python-3000 with Talin
and Phillip Eby about PEP 3115 chaining rules.)
2007-08-02 16:48:17 +00:00
Georg Brandl a9efc8e268 Remove useless \withsubitem. 2007-08-02 07:53:40 +00:00
Guido van Rossum b43daf7096 Changes to long and float by Jeffrey Jasskin to conform to PEP 3141.
In particular, add trivial implementations of .real, .imag and .conjugate()
to both, and add .numerator and .denominator to long.
Also some small optimizations (e.g. remove long_pos in favor of long_long).
2007-08-01 18:08:08 +00:00
Guido van Rossum a6bcefca81 When testing all stdlib modules, ignore test_pep263.py which is encoded
in KOI8-R.
2007-08-01 18:06:13 +00:00
Guido van Rossum 70d2b890de Tests for @abstractproperty by Jeffrey Yasskin.
(The previous changes to abc.py were also by him).
Put back a comment about using super() for properties
(I didn't realize this worked).
2007-08-01 17:52:23 +00:00
Guido van Rossum 46334cdae8 Kill div, mod and divmod on complex (already deprecated in 2.x).
Add docstring for conjugate().
Patch by Jeffrey Yasskin.
2007-08-01 17:43:15 +00:00
Guido van Rossum b31339fa02 Add @abstractproperty. 2007-08-01 17:32:28 +00:00
Walter Dörwald e78178e2c0 Bytes (which are the input for decoding) are mutable now. If a decoding
error callback changes the bytes object in the exception the decoder might
use memory that's no longer in use. Change unicode_decode_call_errorhandler()
so that it fetches the adresses of the bytes array (start and end) from the
exception object and passes them back to the caller.
2007-07-30 13:31:40 +00:00
Brett Cannon 2dbde5ea44 In cases where dealing with base64, do the conversion but then get the ASCII
string representation for use in the XML.

Also strip out some unneeded encoding/decoding steps.
2007-07-30 03:50:35 +00:00
Brett Cannon 96d7e8369c Don't try to use a bytes sequence for file paths. Also force equivalency tests
to be between str8 and str.
2007-07-30 01:34:07 +00:00
Guido van Rossum 7a2653438a Add a missing "rf.depth = 0;" to marshal_load().
Reported by Joe Smith.  This makes the CYGWIN tests pass;
it's a miracle it didn't fail on other platforms.
Seems like it was accidentally dropped (maybe a merge artifact?).
2007-07-30 00:04:35 +00:00
Martin v. Löwis 447d33ead6 Implement PEP 3120. 2007-07-29 18:10:01 +00:00
Brett Cannon 5de17db361 Testing against a different default encoding is meaningless as the default
encoding can only be UTF-8 now.
2007-07-29 02:57:38 +00:00
Brett Cannon d38d078566 Expat parser no longer has a returns_unicode attribute since everything is
Unicode now.
2007-07-29 02:56:27 +00:00
Martin v. Löwis 48f4cf9b94 Use BytesIO instead of cStringIO.StringIO. 2007-07-28 17:58:14 +00:00
Martin v. Löwis 1bba9db0c3 Revert previous checkin. 2007-07-28 17:57:00 +00:00
Martin v. Löwis c582bfca26 Fix quopri to operate consistently on bytes. 2007-07-28 17:52:25 +00:00
Martin v. Löwis f3f0c611dd Return bytes, not str8. 2007-07-28 17:51:59 +00:00
Martin v. Löwis f30bb0eba2 Patch #1762412: Fix test case for struni branch. 2007-07-28 11:40:46 +00:00
Guido van Rossum 3e1f85eb5d Fix the minidom test.
In order to do this, I added an optional encoding argument to io.StringIO.
The toprettyxml() function returns bytes when you specify an encoding now.
2007-07-27 18:03:11 +00:00
Guido van Rossum 3992db81b6 SF patch# 1759922 by Alexandre Vassalotti.
Fix one of the two failing tests for minidom.
2007-07-27 17:26:00 +00:00
Guido van Rossum 624ab7c28a Make test_sgmllib pass on OSX. Hopefully it still passes everywhere else too. 2007-07-27 17:12:11 +00:00
Guido van Rossum 45c85d15b0 Fix the docstrings for keys(), items(), values() (especially the latter).
Get rid of some #ifdef'ed-out code.
2007-07-27 16:31:40 +00:00