diff options
author | Peter Varga <pvarga@inf.u-szeged.hu> | 2022-11-29 17:21:50 +0100 |
---|---|---|
committer | Peter Varga <pvarga@inf.u-szeged.hu> | 2022-12-08 09:06:29 +0100 |
commit | 8fd7140082e3a752ca80882a29128ffc12d12fa4 (patch) | |
tree | eb3e222649ae35b8e5f6ddc820a31b9c7a4845fd /tests | |
parent | 6d1582b948448eb4ea257f930d31f0c0d852d0c4 (diff) |
Deprecate Quota Permission Request API
Requesting host quota is no longer supported by Chromium.
navigator.webkitPersistentStorage has became an alias for
navigator.webkitTemporaryStorage after the Chromium 106 update.
Requesting quota for temporary storage is needless because the
allocation is automatic and storage can't be requested beyond the
maximum limit.
The logic of the persistent storage will be entirely removed in the next
Chromium update so just deprecate the API and remove the corresponding
implementations.
[ChangeLog][QtWebEngineCore] Deprecate QWebEnginePage::quotaRequested()
signal and QWebEngineQuotaRequest class. The signal is not emmitted
anymore.
[ChangeLog][QtWebEngineQuick] Deprecate QWebEngineView.quoataRequested()
signal. The signal is not emitted anymore.
Task-number: QTBUG-56354
Change-Id: Ie397598c416d9e811270ba56a97f8984948277f7
Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp | 53 |
1 files changed, 26 insertions, 27 deletions
diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp index 7a2821e1c..d04961608 100644 --- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp +++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp @@ -165,7 +165,8 @@ private Q_SLOTS: void runJavaScriptDisabled(); void runJavaScriptFromSlot(); void fullScreenRequested(); - void quotaRequested(); + void requestQuota_data(); + void requestQuota(); // Tests from tst_QWebEngineFrame @@ -2015,8 +2016,18 @@ void tst_QWebEnginePage::fullScreenRequested() QTRY_VERIFY(isFalseJavaScriptResult(page, "document.webkitIsFullScreen")); } -void tst_QWebEnginePage::quotaRequested() +void tst_QWebEnginePage::requestQuota_data() { + QTest::addColumn<QString>("storage"); + QTest::addRow("webkitPersistentStorage") << "navigator.webkitPersistentStorage"; + QTest::addRow("webkitTemporaryStorage") << "navigator.webkitTemporaryStorage"; + +} + +void tst_QWebEnginePage::requestQuota() +{ + QFETCH(QString, storage); + ConsolePage page; QWebEngineView view; view.setPage(&page); @@ -2024,35 +2035,23 @@ void tst_QWebEnginePage::quotaRequested() page.load(QUrl("qrc:///resources/content.html")); QVERIFY(loadFinishedSpy.wait()); - connect(&page, &QWebEnginePage::quotaRequested, - [] (QWebEngineQuotaRequest request) - { - if (request.requestedSize() <= 5000) - request.accept(); - else - request.reject(); - }); - - evaluateJavaScriptSync(&page, - "navigator.webkitPersistentStorage.requestQuota(1024, function(grantedSize) {" \ - "console.log(grantedSize);" \ - "});"); + evaluateJavaScriptSync(&page, QString( + "var storage = %1;" + "storage.requestQuota(1024, function(grantedSize) {" + " console.log(grantedSize);" + "});").arg(storage)); QTRY_COMPARE(page.messages.size(), 1); QTRY_COMPARE(page.messages[0], QString("1024")); - evaluateJavaScriptSync(&page, - "navigator.webkitPersistentStorage.requestQuota(6000, function(grantedSize) {" \ - "console.log(grantedSize);" \ - "});"); - QTRY_COMPARE(page.messages.size(), 2); - QTRY_COMPARE(page.messages[1], QString("1024")); - - evaluateJavaScriptSync(&page, - "navigator.webkitPersistentStorage.queryUsageAndQuota(function(usedBytes, grantedBytes) {" \ - "console.log(usedBytes + ', ' + grantedBytes);" \ - "});"); + evaluateJavaScriptSync(&page, QString( + "var storage = %1;" + "storage.queryUsageAndQuota(function(usedBytes, grantedBytes) {" + " console.log(usedBytes);" + " console.log(grantedBytes);" + "});").arg(storage)); QTRY_COMPARE(page.messages.size(), 3); - QTRY_COMPARE(page.messages[2], QString("0, 1024")); + QTRY_COMPARE(page.messages[1], QString("0")); + QTRY_VERIFY(page.messages[2].toLongLong() >= 1024); } void tst_QWebEnginePage::symmetricUrl() |