[wwwsearch-commits] r29184 - in wwwsearch/mechanize/trunk: . mechanize test
jjlee at codespeak.net
jjlee at codespeak.net
Thu Jun 22 23:19:17 CEST 2006
Author: jjlee
Date: Thu Jun 22 23:19:15 2006
New Revision: 29184
Added:
wwwsearch/mechanize/trunk/test/test_history.doctest
Modified:
wwwsearch/mechanize/trunk/mechanize/_html.py
wwwsearch/mechanize/trunk/test.py
Log:
Add missing history doctest
Modified: wwwsearch/mechanize/trunk/mechanize/_html.py
==============================================================================
--- wwwsearch/mechanize/trunk/mechanize/_html.py (original)
+++ wwwsearch/mechanize/trunk/mechanize/_html.py Thu Jun 22 23:19:15 2006
@@ -34,19 +34,29 @@
DEFAULT_ENCODING = "latin-1"
+
class CachingGeneratorFunction(object):
"""Caching wrapper around a no-arguments iterable."""
+
def __init__(self, iterable):
- self._iterable = iterable
self._cache = []
+
+ # wrap iterable to make it non-restartable (otherwise, __call__ would
+ # give incorrect results)
+ def make_gen():
+ for item in iterable:
+ yield item
+ self._generator = make_gen()
+
def __call__(self):
cache = self._cache
for item in cache:
yield item
- for item in self._iterable:
+ for item in self._generator:
cache.append(item)
yield item
+
class EncodingFinder:
def __init__(self, default_encoding):
self._default_encoding = default_encoding
@@ -69,6 +79,7 @@
# XXX encoding
return _is_html(ct_hdrs, url, self._allow_xhtml)
+
# idea for this argument-processing trick is from Peter Otten
class Args:
def __init__(self, args_map):
Modified: wwwsearch/mechanize/trunk/test.py
==============================================================================
--- wwwsearch/mechanize/trunk/test.py (original)
+++ wwwsearch/mechanize/trunk/test.py Thu Jun 22 23:19:15 2006
@@ -134,6 +134,7 @@
doctest.testfile(os.path.join("test", "test_rfc3986.doctest"))
doctest.testfile(os.path.join("test", "test_request.doctest"))
doctest.testfile(os.path.join("test", "test_history.doctest"))
+ doctest.testfile(os.path.join("test", "test_html.doctest"))
from mechanize import _headersutil, _auth, _clientcookie, _pullparser
doctest.testmod(_headersutil)
doctest.testmod(_auth)
Added: wwwsearch/mechanize/trunk/test/test_history.doctest
==============================================================================
--- (empty file)
+++ wwwsearch/mechanize/trunk/test/test_history.doctest Thu Jun 22 23:19:15 2006
@@ -0,0 +1,12 @@
+>>> from mechanize import History
+
+If nothing has been added, .close should work.
+
+>>> history = History()
+>>> history.close()
+
+Under some circumstances response can be None, in that case
+this method should not raise an exception.
+
+>>> history.add(None, None)
+>>> history.close()
More information about the wwwsearch-commits
mailing list