diff --git a/src/plugins/help/qlitehtml/qlitehtmlwidget.h b/src/plugins/help/qlitehtml/qlitehtmlwidget.h index 5da2c90c72d..740ea27d54f 100644 --- a/src/plugins/help/qlitehtml/qlitehtmlwidget.h +++ b/src/plugins/help/qlitehtml/qlitehtmlwidget.h @@ -41,10 +41,11 @@ public: explicit QLiteHtmlWidget(QWidget *parent = nullptr); ~QLiteHtmlWidget() override; + // declaring the getters Q_INVOKABLE to make them Squish-testable void setUrl(const QUrl &url); - QUrl url() const; + Q_INVOKABLE QUrl url() const; void setHtml(const QString &content); - QString title() const; + Q_INVOKABLE QString title() const; void setZoomFactor(qreal scale); qreal zoomFactor() const; @@ -62,7 +63,8 @@ public: using ResourceHandler = std::function; void setResourceHandler(const ResourceHandler &handler); - QString selectedText() const; + // declaring this Q_INVOKABLE to make it Squish-testable + Q_INVOKABLE QString selectedText() const; signals: void linkClicked(const QUrl &url); diff --git a/tests/system/shared/utils.py b/tests/system/shared/utils.py index 26afa78c8a6..e3adb5c49d5 100644 --- a/tests/system/shared/utils.py +++ b/tests/system/shared/utils.py @@ -670,9 +670,9 @@ def getChildByClass(parent, classToSearchFor, occurrence=1): return children[occurrence - 1] def getHelpViewer(): - return waitForObject("{type='Help::Internal::TextBrowserHelpWidget' unnamed='1' " - "visible='1' window=':Qt Creator_Core::Internal::MainWindow'}", + return waitForObject("{type='QLiteHtmlWidget' unnamed='1' visible='1' " + "window=':Qt Creator_Core::Internal::MainWindow'}", 1000) def getHelpTitle(): - return str(getHelpViewer().documentTitle) + return str(getHelpViewer().title()) diff --git a/tests/system/suite_HELP/tst_HELP04/test.py b/tests/system/suite_HELP/tst_HELP04/test.py index 8a3049c173a..18e3ee45639 100644 --- a/tests/system/suite_HELP/tst_HELP04/test.py +++ b/tests/system/suite_HELP/tst_HELP04/test.py @@ -32,27 +32,17 @@ urlDictionary = { "abundance":"qthelp://com.trolltech.qt.487/qdoc/gettingstarted def __getSelectedText__(): - hv = getHelpViewer() try: - return hv.textCursor().selectedText() - except: - pass - try: - test.log("Falling back to searching for selection in HTML.") - return getHighlightsInHtml(str(hv.toHtml())) + return str(getHelpViewer().selectedText()) except: test.warning("Could not get highlighted text.") return str("") def __getUrl__(): - helpViewer = getHelpViewer() try: - url = helpViewer.url + url = getHelpViewer().url() except: - try: - url = helpViewer.source - except: - return "" + return "" return str(url.scheme) + "://" + str(url.host) + str(url.path) def getHighlightsInHtml(htmlCode):