summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp')
-rw-r--r--tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
index 1c9b668ae..54cf27066 100644
--- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
+++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
@@ -29,6 +29,7 @@
#include <QMainWindow>
#include <QMenu>
#include <QMimeDatabase>
+#include <QNetworkProxy>
#include <QOpenGLWidget>
#include <QPaintEngine>
#include <QPushButton>
@@ -215,6 +216,7 @@ private Q_SLOTS:
void viewSource();
void viewSourceURL_data();
void viewSourceURL();
+ void proxyConfigWithUnexpectedHostPortPair();
private:
static QPoint elementCenter(QWebEnginePage *page, const QString &id);
@@ -4528,6 +4530,23 @@ void tst_QWebEnginePage::viewSourceURL()
QVERIFY(!page.action(QWebEnginePage::ViewSource)->isEnabled());
}
+Q_DECLARE_METATYPE(QNetworkProxy::ProxyType);
+
+void tst_QWebEnginePage::proxyConfigWithUnexpectedHostPortPair()
+{
+ // Chromium expects a proxy of type NoProxy to not have a host or port set.
+
+ QNetworkProxy proxy;
+ proxy.setType(QNetworkProxy::NoProxy);
+ proxy.setHostName(QStringLiteral("127.0.0.1"));
+ proxy.setPort(244);
+ QNetworkProxy::setApplicationProxy(proxy);
+
+ QSignalSpy loadFinishedSpy(m_page, SIGNAL(loadFinished(bool)));
+ m_page->load(QStringLiteral("http://127.0.0.1:245/"));
+ QTRY_COMPARE(loadFinishedSpy.count(), 1);
+}
+
static QByteArrayList params = {QByteArrayLiteral("--use-fake-device-for-media-stream")};
W_QTEST_MAIN(tst_QWebEnginePage, params)