diff options
author | Kirill Burtsev <kirill.burtsev@qt.io> | 2019-07-12 11:23:17 +0200 |
---|---|---|
committer | Kirill Burtsev <kirill.burtsev@qt.io> | 2019-07-16 22:47:28 +0200 |
commit | 73daf5b669c943d3c7a765533c5b5d61c380a576 (patch) | |
tree | 137a9773db4a70a9369d077341a95e4fb139fe49 | |
parent | fef43d7b6fad44f9ee3de12ea49cc418245b1844 (diff) | |
download | qtwebengine-73daf5b669c943d3c7a765533c5b5d61c380a576.tar.gz |
Remove qt.io load from findTextInterruptedByLoad and ensure checks
Load of real website is not really needed, simple html is enough to
verify that on load no findText callback is executed from previous
query. Ensure callback is not called with timeout and additional check
inside it to verify that it's not called twise.
Task-number: QTBUG-75541
Change-Id: Iebf207e40d8f4d4f680b46bb0f32480edd72f36d
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
-rw-r--r-- | tests/auto/quick/qmltests/data/tst_findText.qml | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/tests/auto/quick/qmltests/data/tst_findText.qml b/tests/auto/quick/qmltests/data/tst_findText.qml index dfcfd586f..9687d9183 100644 --- a/tests/auto/quick/qmltests/data/tst_findText.qml +++ b/tests/auto/quick/qmltests/data/tst_findText.qml @@ -43,13 +43,21 @@ TestWebEngineView { matchCount = -1 } + function findCallbackCalled() { return matchCount != -1 } + function findTextCallback(matchCount) { + // If this starts to fail then either clear was not called before findText + // or unexpected callback was triggered from some search. + // On c++ side callback id can be checked to verify + testcase.verify(!findCallbackCalled(), 'Unexpected callback call or uncleared state before findText call!') + webEngineView.matchCount = matchCount findFailed = matchCount == 0 } TestCase { + id: testcase name: "WebViewFindText" function getBodyInnerHTML() { @@ -207,13 +215,13 @@ TestWebEngineView { webEngineView.findText("hello", findFlags, webEngineView.findTextCallback); // This should not crash. - webEngineView.url = "https://www.qt.io"; - if (!webEngineView.waitForLoadSucceeded(12000)) - skip("Couldn't load page from network, skipping test."); + webEngineView.loadHtml("<html><body>New page with same hello text</body></html>") + verify(webEngineView.waitForLoadSucceeded()) // The callback is not supposed to be called, see QTBUG-61506. - // Check whether the callback was called (-1 = no, other values = yes). - tryVerify(function() { return webEngineView.matchCount == -1; }, 20000); + expectFailContinue('', 'No unexpected findText callback calls occurred.') + tryVerify(function() { return webEngineView.findCallbackCalled() }) + verify(!webEngineView.findCallbackCalled()) } } } |