From 37a41c7b7ac924b93bacad25926cb731e5c9e080 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Thu, 18 Mar 2021 11:04:39 +0100 Subject: Add a test for flatpak runtime dir See #6300 (cherry picked from commit ca8c3205857bf81a06f8f36aae999303281412e2, but adjusted for this branch) --- qutebrowser/browser/history.py | 2 +- tests/unit/utils/test_standarddir.py | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/qutebrowser/browser/history.py b/qutebrowser/browser/history.py index 9eaa88760..773c6cc51 100644 --- a/qutebrowser/browser/history.py +++ b/qutebrowser/browser/history.py @@ -178,7 +178,7 @@ class WebHistory(sql.SqlTable): try: rebuild_completion = self.metainfo['force_rebuild'] - except sql.BugError: + except sql.BugError: # pragma: no cover log.sql.warning("Failed to access meta info, trying to recover...", exc_info=True) self.metainfo.try_recover() diff --git a/tests/unit/utils/test_standarddir.py b/tests/unit/utils/test_standarddir.py index 5b24ed962..6da33fe82 100644 --- a/tests/unit/utils/test_standarddir.py +++ b/tests/unit/utils/test_standarddir.py @@ -31,7 +31,7 @@ import subprocess from PyQt5.QtCore import QStandardPaths import pytest -from qutebrowser.utils import standarddir, utils, qtutils +from qutebrowser.utils import standarddir, utils, qtutils, version # Use a different application name for tests to make sure we don't change real @@ -202,6 +202,17 @@ class TestStandardDir: standarddir._init_runtime(args=None) assert standarddir.runtime() == str(tmpdir_env / APPNAME) + def test_flatpak_runtimedir(self, monkeypatch, tmp_path): + app_id = 'org.qutebrowser.qutebrowser' + expected = tmp_path / 'app' / app_id + + monkeypatch.setattr(version, 'is_sandboxed', lambda: True) + monkeypatch.setenv('XDG_RUNTIME_DIR', str(tmp_path)) + monkeypatch.setenv('FLATPAK_ID', app_id) + + standarddir._init_runtime(args=None) + assert standarddir.runtime() == str(expected) + @pytest.mark.fake_os('windows') def test_runtimedir_empty_tempdir(self, monkeypatch, tmpdir): """With an empty tempdir on non-Linux, we should raise.""" -- cgit v1.2.3-54-g00ecf