From 6151a5faa7e929c6fd8bee7efe1a844fd8654d4e Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 5 Sep 2016 15:53:19 +0200 Subject: [PATCH] bdd: Fix handling of @qtweb{kit_engine}_* tags --- tests/end2end/conftest.py | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/tests/end2end/conftest.py b/tests/end2end/conftest.py index a3c8d903c..3f0eb702a 100644 --- a/tests/end2end/conftest.py +++ b/tests/end2end/conftest.py @@ -136,21 +136,23 @@ def pytest_collection_modifyitems(config, items): qtutils.version_check('5.7.1') or os.environ.get('QUTE_QTBUG54419_PATCHED', '')) - markers = { - 'qtwebengine_todo': ('QtWebEngine TODO', pytest.mark.xfail, - config.webengine), - 'qtwebengine_skip': ('Skipped with QtWebEngine', pytest.mark.skipif, - config.webengine), - 'qtwebkit_skip': ('Skipped with QtWebKit', pytest.mark.skipif, - not config.webengine), - 'qtwebengine_createWindow': ('Skipped because of QTBUG-54419', - pytest.mark.skipif, - not qtbug_54419_fixed and - config.webengine) - } + # Note the order here is important! Markers we add later override earlier + # markers, so we should apply the most general markers last. + markers = [ + ('qtwebengine_createWindow', 'Skipped because of QTBUG-54419', + pytest.mark.skipif, + not qtbug_54419_fixed and + config.webengine), + ('qtwebengine_todo', 'QtWebEngine TODO', pytest.mark.xfail, + config.webengine), + ('qtwebengine_skip', 'Skipped with QtWebEngine', pytest.mark.skipif, + config.webengine), + ('qtwebkit_skip', 'Skipped with QtWebKit', pytest.mark.skipif, + not config.webengine), + ] for item in items: - for name, (prefix, pytest_mark, condition) in markers.items(): + for name, prefix, pytest_mark, condition in markers: marker = item.get_marker(name) if marker: if marker.args: