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
......@@ -91,7 +91,7 @@ class Xvfb:
result = check_process.communicate()[0]
if result == 'Free':
# Xvfb did not start properly so stop here
raise NotImplementedError, "Can not start Xvfb, stop test execution"
raise NotImplementedError, "Can not start Xvfb, stop test execution"
def run(self):
for display_try in self.display_list:
......@@ -294,20 +294,12 @@ class FunctionalTestRunner:
while self.getStatus() is None:
time.sleep(10)
if (time.time() - start) > float(self.timeout):
self.verboseErrorLog()
raise TimeoutError("Test took more them %s seconds" % self.timeout)
finally:
self.browser.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):
file_content = self.getStatus().encode("utf-8", "replace")
sucess_amount = TEST_PASS_RE.search(file_content).group(1)
......@@ -361,6 +353,13 @@ class ERP5TypeFunctionalTestCase(ERP5TypeTestCase):
# XXX Memcached 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):
# first of all, abort to get rid of the mysql participation inn this
# transaction
......@@ -373,7 +372,12 @@ class ERP5TypeFunctionalTestCase(ERP5TypeTestCase):
debug = self.foreground or os.environ.get("erp5_debug_mode")
self.runner.test(debug=debug)
detail, success, failure, error_title_list = self.runner.processResult()
try:
detail, success, failure, error_title_list = self.runner.processResult()
except TimeoutError, e:
self._verboseErrorLog(20)
raise TimeoutError(e)
self.logMessage("-" * 79)
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