diff options
-rw-r--r-- | src/webengine/api/qquickwebenginetestsupport_p.h | 1 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineview.cpp | 4 | ||||
-rw-r--r-- | tests/auto/quick/qmltests/data/tst_formValidation.qml | 107 |
3 files changed, 57 insertions, 55 deletions
diff --git a/src/webengine/api/qquickwebenginetestsupport_p.h b/src/webengine/api/qquickwebenginetestsupport_p.h index cb24a9c0b..cca8d1df4 100644 --- a/src/webengine/api/qquickwebenginetestsupport_p.h +++ b/src/webengine/api/qquickwebenginetestsupport_p.h @@ -82,7 +82,6 @@ public: QQuickWebEngineErrorPage *errorPage() const; Q_SIGNALS: - void validationMessageShown(const QString &mainText, const QString &subText); void windowCloseRejected(); void loadVisuallyCommitted(); diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 1cc0969ef..60fb5d0a5 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -1113,10 +1113,6 @@ void QQuickWebEngineViewPrivate::didPrintPageToPdf(const QString &filePath, bool void QQuickWebEngineViewPrivate::showValidationMessage(const QRect &anchor, const QString &mainText, const QString &subText) { -#ifdef ENABLE_QML_TESTSUPPORT_API - if (m_testSupport) - Q_EMIT m_testSupport->validationMessageShown(mainText, subText); -#endif Q_Q(QQuickWebEngineView); QQuickWebEngineFormValidationMessageRequest *request; request = new QQuickWebEngineFormValidationMessageRequest(QQuickWebEngineFormValidationMessageRequest::Show, diff --git a/tests/auto/quick/qmltests/data/tst_formValidation.qml b/tests/auto/quick/qmltests/data/tst_formValidation.qml index cae41821c..182a2eaa9 100644 --- a/tests/auto/quick/qmltests/data/tst_formValidation.qml +++ b/tests/auto/quick/qmltests/data/tst_formValidation.qml @@ -28,22 +28,17 @@ import QtQuick 2.0 import QtTest 1.0 -import QtWebEngine 1.2 -import QtWebEngine.testsupport 1.0 +import QtWebEngine 1.4 TestWebEngineView { id: webEngineView width: 400 height: 300 - testSupport: WebEngineTestSupport { - id: testSupportAPI - } - SignalSpy { - id: showSpy - target: testSupportAPI - signalName: "validationMessageShown" + id: formValidationMessageRequestSpy + target: webEngineView + signalName: "formValidationMessageRequested" } TestCase { @@ -51,63 +46,75 @@ TestWebEngineView { when: windowShown function init() { - webEngineView.url = Qt.resolvedUrl("about:blank") - verify(webEngineView.waitForLoadSucceeded()) - showSpy.clear() + webEngineView.url = Qt.resolvedUrl("about:blank"); + verify(webEngineView.waitForLoadSucceeded()); + formValidationMessageRequestSpy.clear(); } function test_urlForm() { - webEngineView.url = Qt.resolvedUrl("forms.html#url_empty") - verify(webEngineView.waitForLoadSucceeded()) - keyPress(Qt.Key_Enter) - showSpy.wait() - compare(showSpy.signalArguments[0][0], "Please fill out this field.") + webEngineView.url = Qt.resolvedUrl("forms.html#url_empty"); + verify(webEngineView.waitForLoadSucceeded()); + keyPress(Qt.Key_Enter); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[0][0].type, FormValidationMessageRequest.Show); + compare(formValidationMessageRequestSpy.signalArguments[0][0].text, "Please fill out this field."); - webEngineView.url = Qt.resolvedUrl("about:blank") - verify(webEngineView.waitForLoadSucceeded()) + webEngineView.url = Qt.resolvedUrl("about:blank"); + verify(webEngineView.waitForLoadSucceeded()); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[1][0].type, FormValidationMessageRequest.Hide); - webEngineView.url = Qt.resolvedUrl("forms.html#url_invalid") - verify(webEngineView.waitForLoadSucceeded()) - keyPress(Qt.Key_Enter) - showSpy.wait() - compare(showSpy.signalArguments[1][0], "Please enter a URL.") + webEngineView.url = Qt.resolvedUrl("forms.html#url_invalid"); + verify(webEngineView.waitForLoadSucceeded()); + keyPress(Qt.Key_Enter); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[2][0].type, FormValidationMessageRequest.Show); + compare(formValidationMessageRequestSpy.signalArguments[2][0].text, "Please enter a URL."); } function test_emailForm() { - webEngineView.url = Qt.resolvedUrl("forms.html#email_empty") - verify(webEngineView.waitForLoadSucceeded()) - keyPress(Qt.Key_Enter) - showSpy.wait() - compare(showSpy.signalArguments[0][0], "Please fill out this field.") + webEngineView.url = Qt.resolvedUrl("forms.html#email_empty"); + verify(webEngineView.waitForLoadSucceeded()); + keyPress(Qt.Key_Enter); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[0][0].type, FormValidationMessageRequest.Show); + compare(formValidationMessageRequestSpy.signalArguments[0][0].text, "Please fill out this field."); - webEngineView.url = Qt.resolvedUrl("about:blank") - verify(webEngineView.waitForLoadSucceeded()) + webEngineView.url = Qt.resolvedUrl("about:blank"); + verify(webEngineView.waitForLoadSucceeded()); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[1][0].type, FormValidationMessageRequest.Hide); - webEngineView.url = Qt.resolvedUrl("forms.html#email_invalid") - verify(webEngineView.waitForLoadSucceeded()) - keyPress(Qt.Key_Enter) - showSpy.wait() - compare(showSpy.signalArguments[1][0], "Please include an '@' in the email address. 'invalid' is missing an '@'.") + webEngineView.url = Qt.resolvedUrl("forms.html#email_invalid"); + verify(webEngineView.waitForLoadSucceeded()); + keyPress(Qt.Key_Enter); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[2][0].type, FormValidationMessageRequest.Show); + compare(formValidationMessageRequestSpy.signalArguments[2][0].text, "Please include an '@' in the email address. 'invalid' is missing an '@'."); } function test_textForm() { - webEngineView.url = Qt.resolvedUrl("forms.html#input_empty") - verify(webEngineView.waitForLoadSucceeded()) - keyPress(Qt.Key_Enter) - showSpy.wait() - compare(showSpy.signalArguments[0][0], "Please fill out this field.") + webEngineView.url = Qt.resolvedUrl("forms.html#input_empty"); + verify(webEngineView.waitForLoadSucceeded()); + keyPress(Qt.Key_Enter); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[0][0].type, FormValidationMessageRequest.Show); + compare(formValidationMessageRequestSpy.signalArguments[0][0].text, "Please fill out this field."); // Title should be shown for pattern mismatch only - compare(showSpy.signalArguments[0][1], "") + compare(formValidationMessageRequestSpy.signalArguments[0][0].subText, ""); - webEngineView.url = Qt.resolvedUrl("about:blank") - verify(webEngineView.waitForLoadSucceeded()) + webEngineView.url = Qt.resolvedUrl("about:blank"); + verify(webEngineView.waitForLoadSucceeded()); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[1][0].type, FormValidationMessageRequest.Hide); - webEngineView.url = Qt.resolvedUrl("forms.html#lorem_ipsum") - verify(webEngineView.waitForLoadSucceeded()) - keyPress(Qt.Key_Enter) - showSpy.wait() - compare(showSpy.signalArguments[1][0], "Please match the requested format.") - compare(showSpy.signalArguments[1][1], "Should type 'Lorem ipsum'") + webEngineView.url = Qt.resolvedUrl("forms.html#lorem_ipsum"); + verify(webEngineView.waitForLoadSucceeded()); + keyPress(Qt.Key_Enter); + formValidationMessageRequestSpy.wait(); + compare(formValidationMessageRequestSpy.signalArguments[2][0].type, FormValidationMessageRequest.Show); + compare(formValidationMessageRequestSpy.signalArguments[2][0].text, "Please match the requested format."); + compare(formValidationMessageRequestSpy.signalArguments[2][0].subText, "Should type 'Lorem ipsum'"); } } } |