A bit of refactoring in ietf/tests.py
- Legacy-Id: 256
This commit is contained in:
parent
e851dbac27
commit
73bd413e07
|
@ -92,48 +92,49 @@ class UrlTestCase(TestCase):
|
||||||
#print "Not all the application URLs has test cases. The missing are: \n %s" % ("\n ".join(list(set(patterns) - set(covered))))
|
#print "Not all the application URLs has test cases. The missing are: \n %s" % ("\n ".join(list(set(patterns) - set(covered))))
|
||||||
print "Not all the application URLs has test cases."
|
print "Not all the application URLs has test cases."
|
||||||
|
|
||||||
def testUrls(self):
|
def doUrlsTest(self, lst):
|
||||||
for codes, testurl, goodurl in self.testtuples:
|
response_count = {"Exc": 0, 200: 0, }
|
||||||
if codes[0] in ["skip", "Skip"]:
|
for code, url in lst:
|
||||||
print "Skipping %s" % (testurl)
|
if code in ["Skip", "skip"]:
|
||||||
else:
|
print "Skipping %s" % (url)
|
||||||
|
elif url:
|
||||||
|
print "Trying code, url: (<%s>, '%s')" % (code, url)
|
||||||
try:
|
try:
|
||||||
response = self.client.get(testurl)
|
response = self.client.get(url)
|
||||||
code = str(response.status_code)
|
res = response.status_code
|
||||||
print "Got code %s for %s" % (code, testurl)
|
if not res in response_count:
|
||||||
if not code in codes:
|
response_count[res] = 0
|
||||||
self.fail("Unexpected response code (%s) for URL '%s'" % (code, testurl))
|
response_count[res] += 1
|
||||||
# TODO: Add comparison with goodurl
|
if str(res) in code.split(","):
|
||||||
|
print "OK %s %s" % (res, url)
|
||||||
|
else:
|
||||||
|
print "Fail %s %s" % (res, url)
|
||||||
except:
|
except:
|
||||||
print "Exception for URL '%s'" % testurl
|
if not "Exc" in response_count:
|
||||||
|
response_count["Exc"] = 0
|
||||||
|
response_count["Exc"] += 1
|
||||||
|
print "Exception for URL '%s'" % url
|
||||||
traceback.print_exc()
|
traceback.print_exc()
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
for code in response_count:
|
||||||
|
print " %s: %s " % (res, response_count[code])
|
||||||
|
for code in response_count:
|
||||||
|
if str(code) != "200":
|
||||||
|
self.assertEqual(response_count[code], 0)
|
||||||
|
|
||||||
|
def testUrlsList(self):
|
||||||
|
lst = [(tuple[0], tuple[1]) for tuple in self.testtuples]
|
||||||
|
self.doUrlsTest(lst)
|
||||||
|
|
||||||
def testUrlsFallback(self):
|
def testUrlsFallback(self):
|
||||||
patterns = get_patterns(ietf.urls)
|
patterns = get_patterns(ietf.urls)
|
||||||
response_count = {}
|
response_count = {"Exc": 0, "200": 0, }
|
||||||
|
lst = []
|
||||||
for pattern in patterns:
|
for pattern in patterns:
|
||||||
if pattern.startswith("^") and pattern.endswith("$"):
|
if pattern.startswith("^") and pattern.endswith("$"):
|
||||||
url = "/"+pattern[1:-1]
|
url = "/"+pattern[1:-1]
|
||||||
# if there is no variable parts in the url, test it
|
# if there is no variable parts in the url, test it
|
||||||
if re.search("^[-a-z0-9./_]*$", url) and not url in self.testurls and not url.startswith("/admin/"):
|
if re.search("^[-a-z0-9./_]*$", url) and not url in self.testurls and not url.startswith("/admin/"):
|
||||||
try:
|
lst.append(("200", url))
|
||||||
response = self.client.get(url)
|
self.doUrlsTest(lst)
|
||||||
if not response.status_code in response_count:
|
|
||||||
response_count[response.status_code] = 0
|
|
||||||
response_count[response.status_code] += 1
|
|
||||||
if response.status_code != 200:
|
|
||||||
print "Bad code %s for %s" % (response.status_code, url)
|
|
||||||
except:
|
|
||||||
if not "Exc" in response_count:
|
|
||||||
response_count["Exc"] = 0
|
|
||||||
response_count["Exc"] += 1
|
|
||||||
print "Exception for URL '%s'" % url
|
|
||||||
traceback.print_exc()
|
|
||||||
else:
|
|
||||||
print "Skipping %s" % (url)
|
|
||||||
print "testUrlsFallback() response count:\n code count"
|
|
||||||
for code in response_count:
|
|
||||||
print " %s: %s " % (code, response_count[code])
|
|
||||||
for code in response_count:
|
|
||||||
if str(code) != "200":
|
|
||||||
self.assertEqual(response_count[code], 0)
|
|
||||||
|
|
|
@ -6,6 +6,9 @@
|
||||||
200,404 /idtracker/status/
|
200,404 /idtracker/status/
|
||||||
200,404 /idtracker/last_call/
|
200,404 /idtracker/last_call/
|
||||||
skip /my/
|
skip /my/
|
||||||
|
skip /idindex/
|
||||||
|
skip /idindex/showdocs/all/date/
|
||||||
|
skip /idindex/showdocs/all/name/
|
||||||
200,404 /liaisons/
|
200,404 /liaisons/
|
||||||
200,404 /liaisons/managers/
|
200,404 /liaisons/managers/
|
||||||
200,404 /mailinglists/area_lists/
|
200,404 /mailinglists/area_lists/
|
||||||
|
|
Loading…
Reference in a new issue