[wwwsearch-commits] r36052 - in wwwsearch/mechanize/trunk: mechanize test
jjlee at codespeak.net
jjlee at codespeak.net
Sat Dec 30 00:24:56 CET 2006
Author: jjlee
Date: Sat Dec 30 00:24:54 2006
New Revision: 36052
Modified:
wwwsearch/mechanize/trunk/mechanize/_html.py
wwwsearch/mechanize/trunk/test/test_browser.doctest
Log:
Fix Factory.global_form implementation
Modified: wwwsearch/mechanize/trunk/mechanize/_html.py
==============================================================================
--- wwwsearch/mechanize/trunk/mechanize/_html.py (original)
+++ wwwsearch/mechanize/trunk/mechanize/_html.py Sat Dec 30 00:24:54 2006
@@ -432,6 +432,8 @@
"""
+ LAZY_ATTRS = ["encoding", "is_html", "title", "global_form"]
+
def __init__(self, forms_factory, links_factory, title_factory,
encoding_finder=EncodingFinder(DEFAULT_ENCODING),
response_type_finder=ResponseTypeFinder(allow_xhtml=False),
@@ -474,14 +476,14 @@
self._response = response
self._forms_genf = self._links_genf = None
self._get_title = None
- for name in ["encoding", "is_html", "title", "global_form"]:
+ for name in self.LAZY_ATTRS:
try:
delattr(self, name)
except AttributeError:
pass
def __getattr__(self, name):
- if name not in ["encoding", "is_html", "title"]:
+ if name not in self.LAZY_ATTRS:
return getattr(self.__class__, name)
if name == "encoding":
@@ -499,7 +501,6 @@
self.title = None
return self.title
elif name == "global_form":
- assert False # XXXX fixme!
self.forms()
return self.global_form
Modified: wwwsearch/mechanize/trunk/test/test_browser.doctest
==============================================================================
--- wwwsearch/mechanize/trunk/test/test_browser.doctest (original)
+++ wwwsearch/mechanize/trunk/test/test_browser.doctest Sat Dec 30 00:24:54 2006
@@ -116,9 +116,9 @@
Traceback (most recent call last):
BrowserStateError: not viewing any document
>>> br.set_response(response)
+>>> br.global_form().find_control(nr=0).name
+'a'
>>> len(list(br.forms()))
1
>>> iter(br.forms()).next().find_control(nr=0).name
'b'
->>> br.global_form().find_control(nr=0).name
-'a'
More information about the wwwsearch-commits
mailing list