[Python-checkins] python/dist/src/Lib/test test_urllib2.py,1.8,1.9

jhylton at users.sourceforge.net jhylton at users.sourceforge.net
Wed Dec 17 15:42:41 EST 2003


Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1:/tmp/cvs-serv9529
Modified Files:
	test_urllib2.py 
Log Message:
Add methods to MockHTTPClass for modern httplib interface.
Replace lots of assert_(x == y) with assertEqual(x, y).
Index: test_urllib2.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_urllib2.py,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** test_urllib2.py	14 Dec 2003 05:27:34 -0000	1.8
--- test_urllib2.py	17 Dec 2003 20:42:38 -0000	1.9
***************
*** 165,174 ****
 # (instead of response), which becomes the OpenerDirector's return
 # value.
! self.assert_(r == handlers[2])
 calls = [(handlers[0], "http_open"), (handlers[2], "http_open")]
 for expected, got in zip(calls, o.calls):
 handler, name, args, kwds = got
! self.assert_((handler, name) == expected)
! self.assert_(args == (req,))
 
 def test_handler_order(self):
--- 165,174 ----
 # (instead of response), which becomes the OpenerDirector's return
 # value.
! self.assertEqual(r, handlers[2])
 calls = [(handlers[0], "http_open"), (handlers[2], "http_open")]
 for expected, got in zip(calls, o.calls):
 handler, name, args, kwds = got
! self.assertEqual((handler, name), expected)
! self.assertEqual(args, (req,))
 
 def test_handler_order(self):
***************
*** 187,192 ****
 r = o.open("http://example.com/")
 # handlers called in reverse order, thanks to their sort order
! self.assert_(o.calls[0][0] == handlers[1])
! self.assert_(o.calls[1][0] == handlers[0])
 
 def test_raise(self):
--- 187,192 ----
 r = o.open("http://example.com/")
 # handlers called in reverse order, thanks to their sort order
! self.assertEqual(o.calls[0][0], handlers[1])
! self.assertEqual(o.calls[1][0], handlers[0])
 
 def test_raise(self):
***************
*** 201,205 ****
 req = Request("http://example.com/")
 self.assertRaises(urllib2.URLError, o.open, req)
! self.assert_(o.calls == [(handlers[0], "http_open", (req,), {})])
 
 ## def test_error(self):
--- 201,205 ----
 req = Request("http://example.com/")
 self.assertRaises(urllib2.URLError, o.open, req)
! self.assertEqual(o.calls, [(handlers[0], "http_open", (req,), {})])
 
 ## def test_error(self):
***************
*** 227,235 ****
 assert len(o.calls) == 2
 calls = [(handlers[0], "http_open", (req,)),
! (handlers[2], "http_error_302", (req, Unknown(), 302, "", {}))]
 for expected, got in zip(calls, o.calls):
 handler, method_name, args = expected
! self.assert_((handler, method_name) == got[:2])
! assert args == got[2]
 
 def test_processors(self):
--- 227,236 ----
 assert len(o.calls) == 2
 calls = [(handlers[0], "http_open", (req,)),
! (handlers[2], "http_error_302",
! (req, Unknown(), 302, "", {}))]
 for expected, got in zip(calls, o.calls):
 handler, method_name, args = expected
! self.assertEqual((handler, method_name), got[:2])
! self.assertEqual(args, got[2])
 
 def test_processors(self):
***************
*** 248,264 ****
 # processor methods are called on *all* handlers that define them,
 # not just the first handler that handles the request
! calls = [(handlers[0], "http_request"), (handlers[1], "http_request"),
! (handlers[0], "http_response"), (handlers[1], "http_response")]
 
 for i, (handler, name, args, kwds) in enumerate(o.calls):
 if i < 2:
 # *_request
! self.assert_((handler, name) == calls[i])
! self.assert_(len(args) == 1)
 self.assert_(isinstance(args[0], Request))
 else:
 # *_response
! self.assert_((handler, name) == calls[i])
! self.assert_(len(args) == 2)
 self.assert_(isinstance(args[0], Request))
 # response from opener.open is None, because there's no
--- 249,266 ----
 # processor methods are called on *all* handlers that define them,
 # not just the first handler that handles the request
! calls = [
! (handlers[0], "http_request"), (handlers[1], "http_request"),
! (handlers[0], "http_response"), (handlers[1], "http_response")]
 
 for i, (handler, name, args, kwds) in enumerate(o.calls):
 if i < 2:
 # *_request
! self.assertEqual((handler, name), calls[i])
! self.assertEqual(len(args), 1)
 self.assert_(isinstance(args[0], Request))
 else:
 # *_response
! self.assertEqual((handler, name), calls[i])
! self.assertEqual(len(args), 2)
 self.assert_(isinstance(args[0], Request))
 # response from opener.open is None, because there's no
***************
*** 308,319 ****
 # ftp authentication not yet implemented by FTPHandler
 self.assert_(h.user == h.passwd == "")
! self.assert_(h.host == socket.gethostbyname(host))
! self.assert_(h.port == port)
! self.assert_(h.dirs == dirs)
! self.assert_(h.ftpwrapper.filename == filename)
! self.assert_(h.ftpwrapper.filetype == type_)
 headers = r.info()
! self.assert_(headers["Content-type"] == mimetype)
! self.assert_(int(headers["Content-length"]) == len(data))
 
 def test_file(self):
--- 310,321 ----
 # ftp authentication not yet implemented by FTPHandler
 self.assert_(h.user == h.passwd == "")
! self.assertEqual(h.host, socket.gethostbyname(host))
! self.assertEqual(h.port, port)
! self.assertEqual(h.dirs, dirs)
! self.assertEqual(h.ftpwrapper.filename, filename)
! self.assertEqual(h.ftpwrapper.filetype, type_)
 headers = r.info()
! self.assertEqual(headers["Content-type"], mimetype)
! self.assertEqual(int(headers["Content-length"]), len(data))
 
 def test_file(self):
***************
*** 351,357 ****
 finally:
 os.remove(TESTFN)
! self.assert_(data == towrite)
! self.assert_(headers["Content-type"] == "text/plain")
! self.assert_(headers["Content-length"] == "13")
 # Fudge Last-modified string comparison by one second to
 # prevent spurious failure on crossing a second boundary while
--- 353,359 ----
 finally:
 os.remove(TESTFN)
! self.assertEqual(data, towrite)
! self.assertEqual(headers["Content-type"], "text/plain")
! self.assertEqual(headers["Content-length"], "13")
 # Fudge Last-modified string comparison by one second to
 # prevent spurious failure on crossing a second boundary while
***************
*** 404,410 ****
 else:
 self.assert_(o.req is req)
! self.assert_(req.type == "ftp")
 
 def test_http(self):
 class MockHTTPClass:
 def __init__(self):
--- 406,418 ----
 else:
 self.assert_(o.req is req)
! self.assertEqual(req.type, "ftp")
 
 def test_http(self):
+ class MockHTTPResponse:
+ def __init__(self, fp, msg, status, reason):
+ self.fp = fp
+ self.msg = msg
+ self.status = status
+ self.reason = reason
 class MockHTTPClass:
 def __init__(self):
***************
*** 415,419 ****
 self.host = host
 return self
! def set_debuglevel(self, level): self.level = level
 def putrequest(self, method, selector):
 self.method, self.selector = method, selector
--- 423,437 ----
 self.host = host
 return self
! def set_debuglevel(self, level):
! self.level = level
! def request(self, method, url, body=None, headers={}):
! self.method = method
! self.selector = url
! self.req_headers += headers.items()
! if body:
! self.data = body
! if self.raise_on_endheaders:
! import socket
! raise socket.error()
 def putrequest(self, method, selector):
 self.method, self.selector = method, selector
***************
*** 424,430 ****
 import socket
 raise socket.error()
! def send(self, data): self.data = data
! def getreply(self): return 200, "OK", {}
! def getfile(self): return MockFile()
 
 h = urllib2.AbstractHTTPHandler()
--- 442,453 ----
 import socket
 raise socket.error()
! def send(self, data):
! self.data = data
! def getreply(self):
! return 200, "OK", {}
! def getresponse(self):
! return MockHTTPResponse(MockFile(), {}, 200, "OK")
! def getfile(self):
! return MockFile()
 
 h = urllib2.AbstractHTTPHandler()
***************
*** 444,455 ****
 hdrs = r.info()
 hdrs.get; hdrs.has_key # r.info() gives dict from .getreply()
! self.assert_(r.geturl() == url)
 
! self.assert_(http.host == "example.com")
! self.assert_(http.level == 0)
! self.assert_(http.method == method)
! self.assert_(http.selector == "/")
! self.assert_(http.req_headers == [("Foo", "bar"), ("Spam", "eggs")])
! self.assert_(http.data == data)
 
 # check socket.error converted to URLError
--- 467,479 ----
 hdrs = r.info()
 hdrs.get; hdrs.has_key # r.info() gives dict from .getreply()
! self.assertEqual(r.geturl(), url)
 
! self.assertEqual(http.host, "example.com")
! self.assertEqual(http.level, 0)
! self.assertEqual(http.method, method)
! self.assertEqual(http.selector, "/")
! self.assertEqual(http.req_headers,
! [("Foo", "bar"), ("Spam", "eggs")])
! self.assertEqual(http.data, data)
 
 # check socket.error converted to URLError
***************
*** 467,476 ****
 self.assert_("Content-type" not in req.unredirected_hdrs)
 else: # POST
! self.assert_(req.unredirected_hdrs["Content-length"] == "0")
! self.assert_(req.unredirected_hdrs["Content-type"] ==
 "application/x-www-form-urlencoded")
 # XXX the details of Host could be better tested
! self.assert_(req.unredirected_hdrs["Host"] == "example.com")
! self.assert_(req.unredirected_hdrs["Spam"] == "eggs")
 
 # don't clobber existing headers
--- 491,500 ----
 self.assert_("Content-type" not in req.unredirected_hdrs)
 else: # POST
! self.assertEqual(req.unredirected_hdrs["Content-length"], "0")
! self.assertEqual(req.unredirected_hdrs["Content-type"],
 "application/x-www-form-urlencoded")
 # XXX the details of Host could be better tested
! self.assertEqual(req.unredirected_hdrs["Host"], "example.com")
! self.assertEqual(req.unredirected_hdrs["Spam"], "eggs")
 
 # don't clobber existing headers
***************
*** 480,487 ****
 req.add_unredirected_header("Spam", "foo")
 newreq = h.do_request(req)
! self.assert_(req.unredirected_hdrs["Content-length"] == "foo")
! self.assert_(req.unredirected_hdrs["Content-type"] == "bar")
! self.assert_(req.unredirected_hdrs["Host"] == "baz")
! self.assert_(req.unredirected_hdrs["Spam"] == "foo")
 
 def test_errors(self):
--- 504,511 ----
 req.add_unredirected_header("Spam", "foo")
 newreq = h.do_request(req)
! self.assertEqual(req.unredirected_hdrs["Content-length"], "foo")
! self.assertEqual(req.unredirected_hdrs["Content-type"], "bar")
! self.assertEqual(req.unredirected_hdrs["Host"], "baz")
! self.assertEqual(req.unredirected_hdrs["Spam"], "foo")
 
 def test_errors(self):
***************
*** 499,504 ****
 r = MockResponse(201, "Created", {}, "", url)
 self.assert_(h.http_response(req, r) is None)
! self.assert_(o.proto == "http") # o.error called
! self.assert_(o.args == (req, r, 201, "Created", {}))
 
 def test_redirect(self):
--- 523,528 ----
 r = MockResponse(201, "Created", {}, "", url)
 self.assert_(h.http_response(req, r) is None)
! self.assertEqual(o.proto, "http") # o.error called
! self.assertEqual(o.args, (req, r, 201, "Created", {}))
 
 def test_redirect(self):
***************
*** 520,529 ****
 # 307 in response to POST requires user OK
 self.assert_(code == 307 and data is not None)
! self.assert_(o.req.get_full_url() == to_url)
 try:
! self.assert_(o.req.get_method() == "GET")
 except AttributeError:
 self.assert_(not o.req.has_data())
! self.assert_(o.req.headers["Nonsense"] == "viking=withhold")
 self.assert_("Spam" not in o.req.headers)
 self.assert_("Spam" not in o.req.unredirected_hdrs)
--- 544,554 ----
 # 307 in response to POST requires user OK
 self.assert_(code == 307 and data is not None)
! self.assertEqual(o.req.get_full_url(), to_url)
 try:
! self.assertEqual(o.req.get_method(), "GET")
 except AttributeError:
 self.assert_(not o.req.has_data())
! self.assertEqual(o.req.headers["Nonsense"],
! "viking=withhold")
 self.assert_("Spam" not in o.req.headers)
 self.assert_("Spam" not in o.req.unredirected_hdrs)
***************
*** 560,564 ****
 count = count + 1
 except urllib2.HTTPError:
! self.assert_(count == urllib2.HTTPRedirectHandler.max_redirections)
 
 
--- 585,590 ----
 count = count + 1
 except urllib2.HTTPError:
! self.assertEqual(count,
! urllib2.HTTPRedirectHandler.max_redirections)
 
 


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /