summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2023-05-31 14:08:50 +0200
committerFlorian Bruhin <me@the-compiler.org>2023-05-31 14:08:50 +0200
commit818a133d91981bec2fcf1bedff7ae596fa915ac1 (patch)
treeace39e780a20be9c595c0a2d9483f42540fbf474
parente65325ae4df30a374f2cea1074594e15ebcd842c (diff)
downloadqutebrowser-818a133d91981bec2fcf1bedff7ae596fa915ac1.tar.gz
qutebrowser-818a133d91981bec2fcf1bedff7ae596fa915ac1.zip
tests: Make sure QNetworkDiskCacheMetadata has a header set
Qt 6.5.1 started treating the absence of a header as the cache entry being corrupted... https://bugreports.qt.io/browse/QTBUG-111397 https://codereview.qt-project.org/c/qt/qtbase/+/465547
-rw-r--r--tests/unit/browser/webkit/test_cache.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/tests/unit/browser/webkit/test_cache.py b/tests/unit/browser/webkit/test_cache.py
index 90715ec21..8e43b583f 100644
--- a/tests/unit/browser/webkit/test_cache.py
+++ b/tests/unit/browser/webkit/test_cache.py
@@ -30,10 +30,19 @@ def disk_cache(tmpdir, config_stub):
return cache.DiskCache(str(tmpdir))
-def preload_cache(cache, url='http://www.example.com/', content=b'foobar'):
+def build_metadata(url='http://qutebrowser.org/'):
metadata = QNetworkCacheMetaData()
metadata.setUrl(QUrl(url))
+ # https://codereview.qt-project.org/c/qt/qtbase/+/465547
+ metadata.setRawHeaders([(b"X-Hello", b"World")])
+
assert metadata.isValid()
+ assert metadata.rawHeaders()
+ return metadata
+
+
+def preload_cache(cache, url='http://www.example.com/', content=b'foobar'):
+ metadata = build_metadata(url)
device = cache.prepare(metadata)
assert device is not None
device.write(content)
@@ -71,12 +80,8 @@ def test_cache_size_leq_max_cache_size(config_stub, tmpdir):
def test_cache_existing_metadata_file(tmpdir, disk_cache):
"""Test querying existing meta data file from activated cache."""
- url = 'http://qutebrowser.org'
content = b'foobar'
-
- metadata = QNetworkCacheMetaData()
- metadata.setUrl(QUrl(url))
- assert metadata.isValid()
+ metadata = build_metadata()
device = disk_cache.prepare(metadata)
assert device is not None
@@ -173,8 +178,7 @@ def test_cache_full(tmpdir):
content2 = b'ohmycert'
preload_cache(disk_cache, url2, content2)
- metadata = QNetworkCacheMetaData()
- metadata.setUrl(QUrl(url))
+ metadata = build_metadata(url)
soon = QDateTime.currentDateTime().addMonths(4)
assert soon.isValid()
metadata.setLastModified(soon)