# HG changeset patch # User Denis Laxalde # Date 1479461321 -3600 # Node ID acfb9aa4845e16c941f3457dfb36f1ea27ae3563 # Parent 5f886dc718abe982c76581304b1d007c00e6b3f1 [devtools] Make timeout error in qunit tests configurable and use SkipTest in test_jscript.py This is grafted from 87443f279b0f in default branch (got tired of CI failing because of these unreliable tests). diff -r 5f886dc718ab -r acfb9aa4845e cubicweb/devtools/qunit.py --- a/cubicweb/devtools/qunit.py Thu Jan 26 16:34:56 2017 +0100 +++ b/cubicweb/devtools/qunit.py Fri Nov 18 10:28:41 2016 +0100 @@ -100,6 +100,7 @@ # testfile, (dep_a, dep_b) all_js_tests = () + timeout_error = RuntimeError def setUp(self): super(QUnitTestCase, self).setUp() @@ -150,6 +151,13 @@ print(logf.read()) raise RuntimeError(*data) + def timeout_failure(test_file, timeout, test_count): + with open(browser.log_file) as logf: + print(logf.read()) + msg = '%s inactivity timeout (%is). %i test results received' % ( + test_file, timeout, test_count) + raise self.timeout_error(msg) + while not error: try: result, test_name, msg = self.test_queue.get(timeout=timeout) @@ -163,8 +171,7 @@ yield test_name, self.fail, (msg, ) except Empty: error = True - msg = '%s inactivity timeout (%is). %i test results received' - yield test_file, runtime_error, (msg % (test_file, timeout, test_count), ) + yield test_file, timeout_failure, (test_file, timeout, test_count) if test_count <= 0 and not error: yield test_name, runtime_error, ('No test yielded by qunit for %s' % test_file, ) diff -r 5f886dc718ab -r acfb9aa4845e cubicweb/devtools/test/unittest_qunit.py --- a/cubicweb/devtools/test/unittest_qunit.py Thu Jan 26 16:34:56 2017 +0100 +++ b/cubicweb/devtools/test/unittest_qunit.py Fri Nov 18 10:28:41 2016 +0100 @@ -1,3 +1,5 @@ +from unittest import SkipTest + from cubicweb.devtools import qunit @@ -6,6 +8,7 @@ class QUnitTestCaseTC(qunit.QUnitTestCase): + timeout_error = SkipTest all_js_tests = ( (js('test_simple_success.js'),), (js('test_with_dep.js'), (js('dep_1.js'),)), diff -r 5f886dc718ab -r acfb9aa4845e cubicweb/web/test/test_jscript.py --- a/cubicweb/web/test/test_jscript.py Thu Jan 26 16:34:56 2017 +0100 +++ b/cubicweb/web/test/test_jscript.py Fri Nov 18 10:28:41 2016 +0100 @@ -1,3 +1,5 @@ +from unittest import SkipTest + from cubicweb.devtools import qunit from os import path as osp @@ -5,6 +7,7 @@ class JScript(qunit.QUnitTestCase): + timeout_error = SkipTest all_js_tests = ( ("/static/jstests/test_utils.js", ( "/data/cubicweb.js",