summaryrefslogtreecommitdiffstats
path: root/tests/auto/network/socket/qtcpsocket
diff options
context:
space:
mode:
authorTimur Pocheptsov <timur.pocheptsov@qt.io>2020-02-05 16:43:21 +0100
committerTimur Pocheptsov <timur.pocheptsov@qt.io>2020-02-07 08:54:11 +0100
commit4c4b5a97c3167b405faab2cc3f3fb38408374df2 (patch)
treec681e7286a82166bcecaf8ce3b635e047476c9bf /tests/auto/network/socket/qtcpsocket
parentfcaa7506ba1823c5af84341ced3914ea0099b446 (diff)
Skip test cases that is failing on macOS >= 10.14
bind on port 1/82 is now success, in QTcpSocket's test things are more broken: changing the test row makes the test flaky with port not available due to the previous test case. Task-number: QTBUG-81905 Change-Id: Iaf1b5457fa3961a4f6bc92b79aa4668a8359136e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'tests/auto/network/socket/qtcpsocket')
-rw-r--r--tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
index 9ab5e88900..bf08d70eb3 100644
--- a/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
+++ b/tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
@@ -558,8 +558,18 @@ void tst_QTcpSocket::bind_data()
// try to bind to a privileged ports
// we should fail if we're not root (unless the ports are in use!)
QTest::newRow("127.0.0.1:1") << "127.0.0.1" << 1 << !geteuid() << (geteuid() ? QString() : "127.0.0.1");
- if (testIpv6)
+ if (testIpv6) {
+#ifdef Q_OS_DARWIN
+ // This case is faling in different ways, first, it manages to bind to
+ // port 1 on macOS >= 10.14, but if we change the logic to not fail,
+ // it's becoming flaky and sometimes fails to bind, with error 'port in use'
+ // (apparently inflicted by the previous test row with 127.0.0.1). Amen.
+ if (QOperatingSystemVersion::current() >= QOperatingSystemVersion::MacOSMojave)
+ QTest::qWarn("Skipping [::]:1, see QTBUG-81905", __FILE__, __LINE__);
+ else
+#endif // Q_OS_DARWIN
QTest::newRow("[::]:1") << "::" << 1 << !geteuid() << (geteuid() ? QString() : "::");
+ }
#endif
}