summaryrefslogtreecommitdiff
path: root/pytest.ini
blob: 2de880eaec141dbd3e305e17e2c8ae5ab1eac9ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
[pytest]
log_level = NOTSET
addopts = --strict-markers --strict-config --instafail --benchmark-columns=Min,Max,Median
testpaths = tests
required_plugins =
    pytest-bdd
    pytest-benchmark
    pytest-instafail
    pytest-mock
    pytest-qt
    pytest-rerunfailures
markers =
    gui: Tests using the GUI (e.g. spawning widgets)
    posix: Tests which only can run on a POSIX OS.
    windows: Tests which only can run on Windows.
    linux: Tests which only can run on Linux.
    mac: Tests which only can run on macOS.
    not_mac: Tests which can not run on macOS.
    not_frozen: Tests which can't be run if sys.frozen is True.
    not_flatpak: Tests which can't be run if running with Flatpak.
    no_xvfb: Tests which can't be run with Xvfb.
    frozen: Tests which can only be run if sys.frozen is True.
    integration: Tests which test a bigger portion of code
    end2end: End to end tests which run qutebrowser as subprocess
    xfail_norun: xfail the test with out running it
    ci: Tests which should only run on CI.
    no_ci: Tests which should not run on CI.
    qtwebengine_todo: Features still missing with QtWebEngine
    qtwebengine_skip: Tests not applicable with QtWebEngine
    qtwebkit_skip: Tests not applicable with QtWebKit
    qtwebengine_flaky: Tests which are flaky (and currently skipped) with QtWebEngine
    qtwebengine_mac_xfail: Tests which fail on macOS with QtWebEngine
    this: Used to mark tests during development
    no_invalid_lines: Don't fail on unparsable lines in end2end tests
    fake_os: Fake utils.is_* to a fake operating system
    unicode_locale: Tests which need a unicode locale to work
    qtwebkit_pdf_imageformat_skip: Broken on QtWebKit with PDF image format plugin installed
    qtwebkit_openssl3_skip: Broken due to cheroot bug with OpenSSL 3 on QtWebKit
    windows_skip: Tests which should be skipped on Windows
    qt5_only: Tests which should only run with Qt 5
    qt6_only: Tests which should only run with Qt 6
    qt5_xfail: Tests which fail with Qt 5
    qt6_xfail: Tests which fail with Qt 6
qt_log_level_fail = WARNING
qt_log_ignore =
    # GitHub Actions
    ^QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to .*
    # test_on_focus_changed_issue1484 on macOS
    ^The available OpenGL surface format was either not version 3\.2 or higher or not a Core Profile.*
    # tests/unit/mainwindow/test_messageview.py and
    # tests/unit/mainwindow/statusbar/test_textbase.py::test_resize
    # on Windows
    ^QWindowsWindow::setGeometry(Dp)?: Unable to set geometry .*
    # tests/unit/commands/test_userscripts.py::test_killed_command
    # on Windows
    ^QProcess: Destroyed while process .* is still running\.
    # Qt 6.5 debug build
    # WORKAROUND for https://www.riverbankcomputing.com/pipermail/pyqt/2023-March/045215.html
    ^QObject::connect: Connecting from COMPAT signal \(QSocketNotifier::activated\(int\)\)$
    # Randomly started showing up on Qt 5.15.2
    ^QBackingStore::endPaint\(\) called with active painter; did you forget to destroy it or call QPainter::end\(\) on it\?$
    # Qt 6.5 after system update, from qt-qt.accessibility.atspi
    Error in contacting registry: "org\.freedesktop\.DBus\.Error\.Disconnected" "Not connected to D-Bus server"
    # Seen in Qt 6.6.2 on CI, https://github.com/qutebrowser/qutebrowser/pull/8106#issuecomment-1952320663
    ^QDBusConnection: couldn't handle call to Notify, no slot matched
    ^QDBusConnection: couldn't handle call to CloseNotification, no slot matched
    # Qt 6.7
    ^Path override failed for key base::DIR_APP_DICTIONARIES and path '.*/qtwebengine_dictionaries'
    # Sometime the above message gets printed twice at the same time and the messages get interleaved.
    # The last part of the outer message gets bumped down to a line on its own, so hopefully this
    # catches that. And we don't see any other weird permutations of this.
    ^[^ ]*qtwebengine_dictionaries'$
xfail_strict = true
filterwarnings =
    error
    default:Test process .* failed to terminate!:UserWarning
    # Python 3.12: https://github.com/jendrikseipp/vulture/issues/314
    ignore:ast\.Str is deprecated and will be removed in Python 3\.14; use ast\.Constant instead:DeprecationWarning:vulture\.core
    # Python 3.12: https://github.com/ionelmc/pytest-benchmark/issues/240
    ignore:(datetime\.)?datetime\.utcnow\(\) is deprecated and scheduled for removal in a future version\. Use timezone-aware objects to represent datetimes in UTC. (datetime\.)?datetime\.now\(datetime\.UTC\)\.:DeprecationWarning:pytest_benchmark\.utils
faulthandler_timeout = 90