summaryrefslogtreecommitdiffstats
path: root/tests/auto/core
Commit message (Collapse)AuthorAgeFilesLines
* Resolve installed interceptors right before interception pointKirill Burtsev2021-02-081-0/+127
| | | | | | | | | | | | Ammends a05bb73747. Since request processing is asynchronous, resolve interceptors right before actual interception point to accommodate cases where interceptor on profile or page was replaced or uninstalled before all instantiated InterceptedRequest's are processed. Effectively, this doesn't send url requests to uninstalled interceptors. Fixes: QTBUG-86286 Change-Id: Iaf55e5ef99d62b55f7304ee68a0c89a1469fd86f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Set custom headers from QWebEngineUrlRequestInfo before triggering redirectKirill Burtsev2020-12-013-31/+67
| | | | | | Fixes: QTBUG-88861 Change-Id: I7091aca70aaf87edf0b1e67ec3fa705a59c8192c Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Chromium 81-based adaptationsAllan Sandfeld Jensen2020-09-091-1/+1
| | | | | Change-Id: Ie422b327025da084bc8038c7a0aadee2db801f29 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Merge remote-tracking branch 'origin/5.15.1' into 5.15Allan Sandfeld Jensen2020-09-071-10/+27
|\ | | | | | | Change-Id: Ieb546ccd35db06e8ad6358b11e3139a839c9b4cf
| * Do not call deprecated profile interceptor on ui threadKirill Burtsev2020-09-011-10/+27
| | | | | | | | | | | | | | | | | | | | Otherwise unchanged intercepted request leads to second call in the same interceptor but on ui thread after io thread. Ammends a05bb73747. Fixes: QTBUG-86267 Change-Id: I4e7c662d24a58be5445f5c8b6d0bf3751f40cc05 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Make HttpServer to server resource from dirs for unhandled requestsKirill Burtsev2020-08-311-32/+2
| | | | | | | | | | Change-Id: I2e15dff77c8f18af60a565cb74558f57c3527db8 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Simplify testing with HttpServerKirill Burtsev2020-08-312-8/+3
| | | | | | | | | | | | | | | | Since reply with 404 for unknown resources is a common pattern in tests, reply with it automatically for unhandled requests Change-Id: Ifd184cf474f1ec311c8654dfbacdd735e33d7c97 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Wait for favicon in tst_QWebEngineCookieStore::basicFilterOverHTTPJüri Valdmann2020-08-311-0/+3
|/ | | | | | | | Wait for favicon request, otherwise, since the profile is shared between tests, the request might happen during the next test. Change-Id: I065e54ff6af4985e493a8cea10084e67293a5f0e Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Add the cookie filter to URL requestsAllan Sandfeld Jensen2020-07-152-0/+73
| | | | | | | | | | Submodule src/3rdparty c91f4d20..809e16e4: > Add cookie filter to URL requests cookie headers > Use audio-manager app-name for MPRIS Fixes: QTBUG-85526 Change-Id: Icab26cad3cea8e2ee021a3e589f41bf0543d64fa Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Add test for first party urls of service workerTamas Zakor2020-05-264-0/+109
| | | | | Change-Id: Ic26d982ef9695705a9f7c757b7d983824b31a070 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move request interceptor to ui threadMichal Klocek2020-04-201-27/+96
| | | | | | | | | | | | | We use now network service avoid io-ui-io-ui hops, pipe proxying url loader factory directly to ui thread. This solves thread safty issues. Add deprecated request interceptor test cases. Task-number: QTBUG-83082 Task-number: QTBUG-82999 Change-Id: I38778cf1a70789c5e92e04c93d1c93e2cc4c765a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.14' into 5.15Allan Sandfeld Jensen2020-02-192-32/+51
|\ | | | | | | | | | | | | | | | | Blacklisted one test requiring an update of qt5.git. Conflicts: .qmake.conf Change-Id: I75e55a1c5f8840cde55ddb60d632287b2affadeb
| * Fix tst_QWebEngineUrlRequestInterceptor::initiator flakinessJüri Valdmann2020-02-181-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | The test assumes a 1-1 correspondence between request URLs and initiator origins, but really we have a 1-N correspondence since the same URL can be requested multiple times by different initiator origins. The current flakiness results from just such a conflict, namely from one URL being requested both by the main site (w3schools.com) and by AdSense (doubleclick.net). Fixes: QTBUG-82288 Change-Id: Ida121d8f23b396b72a28faab91780d6fa4d99c92 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
| * Stabilize cookie test and prepare for loadAllCookies API fixKirill Burtsev2020-02-141-22/+41
| | | | | | | | | | | | | | | | | | | | Trigger cookie monster init by making simple blank navigation to allow run every single test separately. API loadAllCookies supposed to init cookie storage to avoid this navigation but currenly doesn't work. Task-number: QTBUG-80605 Change-Id: I0b71e7eeb015169af2042e90713c5aa96f8bb135 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Experimental network-service supportAllan Sandfeld Jensen2019-12-051-0/+8
|/ | | | | | | | | | | | | | | | | | | | | | Is default off, enable with --enable-network-service. Done: * Basic browsing * Basic profile settings * Custom URL schemes * UI-thread interceptors * CookieStore API * CookieStore filters * CookieStore changed events Missing: * deprecated interceptors * complete profile settings * cleanup of system network-context * proxy settings Change-Id: I6af92da40147b968a938d1263df54c4cfe7bcf6d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Add QWebEngineUrlRequestInfo::initiator()Tamas Zakor2019-06-051-0/+69
| | | | | | | | | | Returns the origin url of the document which initiated the navigation when a frame navigates another frame. Task-number: QTBUG-75759 Change-Id: Ia2884b5a3027cceea45f0e659652b02036faaacb Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.12' into 5.13Allan Sandfeld Jensen2019-05-242-0/+44
|\ | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/net/network_delegate_qt.cpp tests/auto/widgets/qwebenginedownloaditem/tst_qwebenginedownloaditem.cpp Change-Id: Ib715b3047213583e0441b915d3cabb801d9d4ba8
| * Referrer HTTP Header no longer ignored when set via RequestInterceptorLeander Beernaert2019-05-202-0/+44
| | | | | | | | | | | | | | | | | | | | | | Make sure the HTTP referer is properly placed on a request when it's set via the QWebEngineUrlRequestInterceptor. Added test case to catch future incidents. Fixes: QTBUG-60203 Change-Id: Ida2f713a7352c3199fc9f8e15b5d8350d50afdda Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Adaptations for Chromium 72Allan Sandfeld Jensen2019-03-231-3/+3
| | | | | | | | | | Change-Id: Ic355257066c7c1433862cb41e6f2bfa831147e0d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Remove Entry type from QWebEngineClientCertificateStoreAllan Sandfeld Jensen2019-03-201-6/+6
| | | | | | | | | | | | | | | | It is now only possible to list contained certificates, which is used by the existing tests. Change-Id: I3eada816a05cff2bb9cc5d39125136e9084a1a2f Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Enable core auto test on qemuMichal Klocek2019-03-151-3/+1
| | | | | | | | | | | | Task-number: QTBUG-63346 Change-Id: Id2bbb731cad5cb222f4dbaa540d4b9a9c19e2a72 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Fix -no-ssl buildv5.13.0-beta1Peter Varga2019-03-071-1/+3
| | | | | | | | | | Change-Id: I978f70545484060218f5243c74978c85bc603c16 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Tie client certificate stores to profilesAllan Sandfeld Jensen2019-03-011-9/+10
| | | | | | | | | | | | | | | | Move the client certificate store from being global to being tied to individual profiles. Change-Id: Ib21ae14c501b7d0612b84ae7535120291aeeada2 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Make client certificate store thread safeAllan Sandfeld Jensen2019-02-251-1/+1
| | | | | | | | | | | | | | | | If the users manipulate the API from the UI, we need to read from the UI thread as well. Change-Id: I8af787a357954cff4fbdd94bcf27b880fb6aecb4 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Remove duplicate RESOURCES in QWebEngineClientCertificateStore testJüri Valdmann2019-02-221-3/+0
| | | | | | | | | | | | | | | | | | | | | | Makefile:530: warning: overriding recipe for target '.rcc/qrc_tst_qwebengineclientcertificatestore.cpp' Makefile:522: warning: ignoring old recipe for target '.rcc/qrc_tst_qwebengineclientcertificatestore.cpp' The resource file tst_qwebengineclientcertificatestore.qrc is already automatically added to RESOURCES by tests.pri, no need to add it again. Change-Id: Idfbde5da06337c5e436734c6a88651c153223bfc Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Add client certificate store test casesVijith Kini2019-02-208-0/+212
| | | | | | | | | | Change-Id: Ib8fdfdd21c064f31acfcf8ce2cf840463d10c07e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Move QWebEngineUrlRequestInterceptor::intercept to ui threadMichal Klocek2019-02-041-11/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently interceptor sufferers thread safety issues, when custom profiles are deleted, interceptor is set to be nullptr, however it can be still referenced in IO thread. Since profile was split to ui and io part, where io part can outlive the ui part, this can boost thread safety issues. Since QWebEngineUrlRequestInterceptor is living on ui thread simplify the logic move intercept call to ui thread. This fixes the issue of referencing interceptor in io thread. Add new method to install interceptor setUrlRequestInterceptor, and deprecate old one. Update interceptor install method name on page to match the profile one. Task-number: QTBUG-69844 Change-Id: I5dd2b6b734fd91906cccc6c1408ffbe7b1b4250c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Adaptations for Chromium 71Allan Sandfeld Jensen2019-01-281-4/+1
| | | | | | | | | | | | | | Change-Id: Ib650113b05dfd4771240804f94e33c07aa317bf2 Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devMichael Brüning2019-01-1818-18/+323
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/core/net/network_delegate_qt.cpp src/core/profile_io_data_qt.cpp src/core/web_engine_context.h tests/auto/core/qwebengineurlrequestinterceptor/tst_qwebengineurlrequestinterceptor.cpp Change-Id: Id98e3f52f548ceb5b68abd80aedd6ae59db72cc0
| * Fix QWebEngineUrlRequestInfo::firstPartyUrl() after 69-basedTamas Zakor2019-01-0318-18/+323
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The issue was introduced by this Chromium change: https://chromium-review.googlesource.com/c/chromium/src/+/1025772/ Add new auto tests for first party url. Depends on Chromium change: d2f5d6869f Add net::URLRequest::first_party_url() Task-number: QTBUG-70790 Change-Id: Ib43bde69990e7fb1d495cc32ac2f6860a613f185 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add setRequestInterceptor to QWebEnginePageAllan Sandfeld Jensen2018-10-171-3/+28
|/ | | | | | | | | | | | Makes it possible to make page specific intercepts, and is at the same time safer by running in the UI-thread. [ChangeLog][QtWebEngineWidgets][QWebEnginePage] Added setRequestInterceptor, similar to the same call on profile except it operates on a per-page basis and on the UI-thread. Change-Id: Id5a7173156c25d0f030f00b6ef314d283c7c8cdd Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Chromium requires C++14Allan Sandfeld Jensen2018-10-111-1/+0
| | | | | | | | | QtWebEngineCore was only building because Chromium CPPFLAGS was overriding ours. And setting C++11 in our examples and tests now forces a downgrade. Change-Id: I3642394f15bb9974688991800552624d2379faf9 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Use cookie-access rights for webcontent settingsAllan Sandfeld Jensen2018-04-051-0/+26
| | | | | | | | | | This ties the indexed-db, DOM storage and filesystem access to cookie rights as they can all do the same cookies. A previous patch did the same for workers, but we were missing this class to complete the logic. Change-Id: I5ea894b6c631bcf25439759174866d260b91b71a Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Switch cookie-filter API to std::functionAllan Sandfeld Jensen2018-03-161-2/+2
| | | | | | | | | Allows us to use return value instead of magic properties Task-number: QTBUG-66825 Change-Id: I55202a7aca2e662bc214b05caf767d2da496f026 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Test adaptations for Chromium 63Allan Sandfeld Jensen2018-01-251-0/+6
| | | | | Change-Id: I19bf693fb3916a78f4a199e6e095ca58b8fdfa27 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Reinstate cookie filter APIAllan Sandfeld Jensen2018-01-191-0/+33
| | | | | | | | | Expose API to block cookies for specific domains, or third party cookies in general. Task-number: QTBUG-62897 Change-Id: I7f0e3f346368a2ef2fbd77f3197ee2dea50d57ce Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Cleanup core API testsAllan Sandfeld Jensen2018-01-082-42/+47
| | | | | | | | Use in-memory profile and do not use qwebengineviews when all we need are qwebenginepages. Change-Id: I5798c761bccfc0b4bf2cf623e7db35f033bdfd84 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Auto test adaptations for Chromium 58Allan Sandfeld Jensen2017-06-141-5/+4
| | | | | | | | Adjustments to auto tests to pass with Chromium 58 Change-Id: I7f6905e5344c528c608734bc660cbf43c89d4a63 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Disable/blacklist failing tests for boot2qtSami Nurmenniemi2017-05-081-0/+3
| | | | | | | | | Currently boot2qt is tested with QEMU and some tests fail. Disabling them for now to make it possible to enable qt5 tests for Coin. Task-number: QTBUG-60266 Change-Id: I91a61bfb99b2629cb549b76d60c24f1d5f8c3ad8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix font load error messages inside non-app-bundle testsAlexandru Croitor2017-01-101-1/+2
| | | | | | | | | | | | | | | Some fonts were failing to load in tests because macOS does not consider some font paths when an application is built without an Info.plist file (as is the case for a non-bundle application). It is possible though to embed a plist file into the executable by passing the path to the file as a linker argument. This change generates an Info.plist for each test, and embeds it into the final executable, thus fixing the font problems. Task-number: QTBUG-57354 Change-Id: I4c3c29442b9d308ee6a327645054a67c4b008ef8 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Port autotests from own waitForSignal() to QSignalSpy::wait()David Faure2016-11-291-8/+8
| | | | | | | | I added QSignalSpy::wait() in Qt 5.0 exactly for this purpose. Change-Id: I895a92f5f7e4e8554e00f6668e6973cc2c903adf Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add FaviconManager to corePeter Varga2016-02-031-0/+3
| | | | | | | | | The new icon manager uses the WebContents::DownloadImage() API for downloading icons. It proposes the best quality among the available favicons via the iconChanged signal. Change-Id: I66a014365b6f6560ff34d40ee870aee84e4e70e4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Updated license headersJani Heikkinen2016-02-012-46/+20
| | | | | | | | | | | | From Qt 5.7 -> tools & tests are licensed under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header (in those files which will be under GPL 3 with exceptions) Change-Id: I59fcbb8cd1ca42b1a5ef96577bcb35ea0af01b71 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Remove callback functions from qwebenginecookiestoreMichal Klocek2016-01-151-25/+19
| | | | | | | | | | Remove all callback api calls, rename getAllCookies to loadCookies, update documentation. New function name reflects the fact the cookieAdded signal is always emitted when cookies are loaded from the store. Change-Id: Iab7bb04871c7396d2e23306a10084d425426a19f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Change QWebEngineUrlRequestInterceptor::interceptRequest to void.Michael Bruning2015-12-021-5/+3
| | | | | | | | Now uses a flag in QWebEngineUrlRequestInfoPrivate to store if the interceptor actually changed the request. Change-Id: Idccbd1c15696e577ee69248e53b75ba6ec1c571c Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Remove unneeded qWaits from tst_QWebEngineCookieStoreJoerg Bornemann2015-12-011-2/+0
| | | | | | | The issue why these waits were introduced is not valid anymore. Change-Id: Ie8d562ba1b27b8ddbf3b0dfd27c12904b0f6a20e Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
* Rename QWebEngineCookieStoreClient to QWebEngineCookieStoreMichal Klocek2015-12-016-19/+19
| | | | | Change-Id: I8f9a4c5c155a65ede24908799218fd867db0767c Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* remove "CONFIG += ordered" where applicableJoerg Bornemann2015-11-061-2/+0
| | | | | | | We will specify proper dependencies when they are needed. Change-Id: Ic62d891dcf3ee97fd98788e848c9ac7c69922282 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* enable tests/auto/coreJoerg Bornemann2015-10-303-4/+3
| | | | | | | | Enable autotests and blacklist tests that are known to fail. Add skips and waits and mark them with the corresponding task numbers. Change-Id: I993e366ba3b07239a8ba15eae2ee8e3e2aaa8308 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Do not require to subclass/install QWebEngineCookieStoreClientKai Koehne2015-10-191-26/+22
| | | | | | | | | The class has only setters and getters, except for the virtual acceptCookie method. By replacing this method with a setCookieFilter callback we can avoid the need of users to subclass the client. Change-Id: Id78c01fc103b8d9cc267594527239b598e8975f1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>