[IMP] in crawler testing, indicate at which page the failed url was found

bzr revid: xmo@openerp.com-20131125120548-0s7xnhszd48e1u9v
This commit is contained in:
Xavier Morel
2013-11-25 13:05:48 +01:00
parent 4679bfd283
commit b05db3495c
3 changed files with 17 additions and 7 deletions
@@ -898,7 +898,6 @@
minimumInputLength: 1,
placeholder: _t("New or existing page"),
query: function (q) {
// FIXME: out-of-order, abort
self.fetch_pages(q.term).then(function (results) {
var rs = _.map(results, function (r) {
return { id: r.url, text: r.name, };
+4 -1
View File
@@ -6,10 +6,11 @@ class URLCase(unittest2.TestCase):
URLCase moved out of test_requests, otherwise discovery attempts to
instantiate and run it
"""
def __init__(self, user, url, result):
def __init__(self, user, url, source, result):
super(URLCase, self).__init__()
self.user = user
self.url = url
self.source = source
self.result = result
@property
@@ -17,6 +18,8 @@ class URLCase(unittest2.TestCase):
return self.user or "Anonymous Coward"
def __str__(self):
if self.source:
return "%s (from %s, as %s)" % (self.url, self.source, self.username)
return "%s (as %s)" % (self.url, self.username)
__repr__ = __str__
+13 -5
View File
@@ -80,13 +80,13 @@ class CrawlSuite(unittest2.TestSuite):
assert auth.getcode() < 400, "Auth failure %d" % auth.getcode()
def _wrapped_run(self, result, debug=False):
paths = collections.deque(['/'])
paths = [URL('/')]
seen = set(paths)
while paths:
url = paths.popleft()
r = self._request(url)
cases.URLCase(self.user, url, r).run(result)
url = paths.pop(0)
r = self._request(url.url)
url.to_case(self.user, r).run(result)
if r.info().gettype() != 'text/html':
continue
@@ -110,7 +110,15 @@ class CrawlSuite(unittest2.TestSuite):
(parts.scheme and parts.scheme not in ('http', 'https')):
continue
paths.append(href)
paths.append(URL(href, url.url))
class URL(object):
def __init__(self, url, source=None):
self.url = url
self.source = source
def to_case(self, user, result):
return cases.URLCase(user, self.url, self.source, result)
def load_tests(loader, base, _):
base.addTest(CrawlSuite())