[wwwsearch-commits] r29110 - in wwwsearch/mechanize/trunk: . mechanize test

jjlee at codespeak.net jjlee at codespeak.net
Thu Jun 22 00:18:53 CEST 2006


Author: jjlee
Date: Thu Jun 22 00:18:52 2006
New Revision: 29110

Added:
   wwwsearch/mechanize/trunk/test/test_request.doctest
Modified:
   wwwsearch/mechanize/trunk/README.html.in
   wwwsearch/mechanize/trunk/mechanize/_request.py
   wwwsearch/mechanize/trunk/test.py
Log:
Strip fragments before retrieving URLs (fixed Request.get_selector() to strip fragment)

Modified: wwwsearch/mechanize/trunk/README.html.in
==============================================================================
--- wwwsearch/mechanize/trunk/README.html.in	(original)
+++ wwwsearch/mechanize/trunk/README.html.in	Thu Jun 22 00:18:52 2006
@@ -317,8 +317,6 @@
   <li>Test <code>.any_response()</code> two handlers case: ordering.
   <li>Test referer bugs (frags and don't add in redirect unless orig
     req had Referer)
-  <li>Strip fragments before retrieving URLs (this should probably be
-    considered a bug in urllib2).
   <li>Proper XHTML support!
   <li>Fix BeautifulSoup support to use a single BeautifulSoup instance
     per page.

Modified: wwwsearch/mechanize/trunk/mechanize/_request.py
==============================================================================
--- wwwsearch/mechanize/trunk/mechanize/_request.py	(original)
+++ wwwsearch/mechanize/trunk/mechanize/_request.py	Thu Jun 22 00:18:52 2006
@@ -9,6 +9,7 @@
 """
 
 import urllib2
+import urllib
 
 from _clientcookie import request_host
 
@@ -17,6 +18,7 @@
     def __init__(self, url, data=None, headers={},
                  origin_req_host=None, unverifiable=False):
         urllib2.Request.__init__(self, url, data, headers)
+        self.selector = None
         self.unredirected_hdrs = {}
 
         # All the terminology below comes from RFC 2965.
@@ -31,6 +33,11 @@
             origin_req_host = request_host(self)
         self.origin_req_host = origin_req_host
 
+    def get_selector(self):
+        if self.selector is None:
+            self.selector, self.__r_selector = urllib.splittag(self.__r_host)
+        return self.selector
+
     def get_origin_req_host(self):
         return self.origin_req_host
 

Modified: wwwsearch/mechanize/trunk/test.py
==============================================================================
--- wwwsearch/mechanize/trunk/test.py	(original)
+++ wwwsearch/mechanize/trunk/test.py	Thu Jun 22 00:18:52 2006
@@ -132,6 +132,7 @@
             )
     
     doctest.testfile(os.path.join("test", "test_rfc3986.doctest"))
+    doctest.testfile(os.path.join("test", "test_request.doctest"))
     from mechanize import _headersutil, _auth, _clientcookie, _pullparser
     doctest.testmod(_headersutil)
     doctest.testmod(_auth)

Added: wwwsearch/mechanize/trunk/test/test_request.doctest
==============================================================================
--- (empty file)
+++ wwwsearch/mechanize/trunk/test/test_request.doctest	Thu Jun 22 00:18:52 2006
@@ -0,0 +1,4 @@
+>>> from mechanize import Request
+>>> r = Request("http://example.com/foo#frag")
+>>> r.get_selector()
+'/foo'


More information about the wwwsearch-commits mailing list