Commit 0c3bfce9 authored by Rafael Monnerat's avatar Rafael Monnerat

Move ErrorVerbose to ERP5TypeFunctionalTestCase

This change is minor and do not change the final outcome. The
intention is make Runner less dependent of the erp5 portal itself.
parent 4d539623
...@@ -294,20 +294,12 @@ class FunctionalTestRunner: ...@@ -294,20 +294,12 @@ class FunctionalTestRunner:
while self.getStatus() is None: while self.getStatus() is None:
time.sleep(10) time.sleep(10)
if (time.time() - start) > float(self.timeout): if (time.time() - start) > float(self.timeout):
self.verboseErrorLog()
raise TimeoutError("Test took more them %s seconds" % self.timeout) raise TimeoutError("Test took more them %s seconds" % self.timeout)
finally: finally:
self.browser.quit() self.browser.quit()
xvfb.quit() xvfb.quit()
def verboseErrorLog(self, size=10):
for entry in self.portal.error_log.getLogEntries()[:size]:
print "="*20
print "ERROR ID : %s" % entry["id"]
print "TRACEBACK :"
print entry["tb_text"]
def processResult(self): def processResult(self):
file_content = self.getStatus().encode("utf-8", "replace") file_content = self.getStatus().encode("utf-8", "replace")
sucess_amount = TEST_PASS_RE.search(file_content).group(1) sucess_amount = TEST_PASS_RE.search(file_content).group(1)
...@@ -361,6 +353,13 @@ class ERP5TypeFunctionalTestCase(ERP5TypeTestCase): ...@@ -361,6 +353,13 @@ class ERP5TypeFunctionalTestCase(ERP5TypeTestCase):
# XXX Memcached is missing # XXX Memcached is missing
# XXX Persistent cache setup is missing # XXX Persistent cache setup is missing
def _verboseErrorLog(self, size=10):
for entry in self.portal.error_log.getLogEntries()[:size]:
print "="*20
print "ERROR ID : %s" % entry["id"]
print "TRACEBACK :"
print entry["tb_text"]
def testFunctionalTestRunner(self): def testFunctionalTestRunner(self):
# first of all, abort to get rid of the mysql participation inn this # first of all, abort to get rid of the mysql participation inn this
# transaction # transaction
...@@ -373,7 +372,12 @@ class ERP5TypeFunctionalTestCase(ERP5TypeTestCase): ...@@ -373,7 +372,12 @@ class ERP5TypeFunctionalTestCase(ERP5TypeTestCase):
debug = self.foreground or os.environ.get("erp5_debug_mode") debug = self.foreground or os.environ.get("erp5_debug_mode")
self.runner.test(debug=debug) self.runner.test(debug=debug)
try:
detail, success, failure, error_title_list = self.runner.processResult() detail, success, failure, error_title_list = self.runner.processResult()
except TimeoutError, e:
self._verboseErrorLog(20)
raise TimeoutError(e)
self.logMessage("-" * 79) self.logMessage("-" * 79)
total = success + failure total = success + failure
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment