Allow EPOLLEXCLUSIVE tests to be omitted outside of CI
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index d2e3506..3698d1b 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -1432,6 +1432,14 @@
POST_TEST = object()
+def _has_epollexclusive():
+ try:
+ subprocess.check_call('bins/%s/check_epollexclusive' % args.config)
+ return True
+ except subprocess.CalledProcessError, e:
+ return False
+
+
# returns a list of things that failed (or an empty list on success)
def _build_and_run(
check_cancelled, newline_on_success, xml_report=None, build_only=False):
@@ -1449,6 +1457,10 @@
suite_name=args.report_suite_name)
return []
+ if not args.travis and not _has_epollexclusive() and 'epollex' in _POLLING_STRATEGIES[platform_string()]:
+ print('\n\nOmitting EPOLLEXCLUSIVE tests\n\n')
+ _POLLING_STRATEGIES[platform_string()].remove('epollex')
+
# start antagonists
antagonists = [subprocess.Popen(['tools/run_tests/python_utils/antagonist.py'])
for _ in range(0, args.antagonists)]