From 1861b0a5e46302b0735add3ad45797a42b1bf2da Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 28 Sep 2015 21:50:04 +0200 Subject: [PATCH] Don't skip all tests without DISPLAY set. We used qapp in a session scoped fixture, which means testing without DISPLAY skipped all tests. --- tests/conftest.py | 5 +++-- tests/test_conftest.py | 30 ++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 tests/test_conftest.py diff --git a/tests/conftest.py b/tests/conftest.py index b00d9ec8b..b234fc0e3 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -96,10 +96,11 @@ def pytest_runtest_setup(item): pytest.skip("Can only run when frozen!") -@pytest.fixture(autouse=True, scope='session') -def change_qapp_name(qapp): +@pytest.fixture(scope='session') +def qapp(qapp): """Change the name of the QApplication instance.""" qapp.setApplicationName('qute_test') + return qapp class WinRegistryHelper: diff --git a/tests/test_conftest.py b/tests/test_conftest.py new file mode 100644 index 000000000..fc5bcebd0 --- /dev/null +++ b/tests/test_conftest.py @@ -0,0 +1,30 @@ +# vim: ft=python fileencoding=utf-8 sts=4 sw=4 et: + +# Copyright 2015 Florian Bruhin (The Compiler) +# +# This file is part of qutebrowser. +# +# qutebrowser is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# qutebrowser is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with qutebrowser. If not, see . + +"""Various meta-tests for conftest.py.""" + + +def test_qapp_name(qapp): + """Make sure the QApplication name is changed when we use qapp.""" + assert qapp.applicationName() == 'qute_test' + + +def test_foo(request): + """Make sure a test without qapp doesn't use qapp (via autouse).""" + assert 'qapp' not in request.fixturenames