summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@qt.io>2020-11-19 16:06:05 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2020-11-20 13:28:31 +0000
commitce29ce586f06f56a66198b934f8860946380e26e (patch)
treeb6c17c8e4261fd1e40b1d075b10a75bf4e6b5a38 /tests/auto
parent5509449daf699958c212f4d14060c2c2af902317 (diff)
Revert "Allow QWindowsPipe{Reader,Writer} to work with foreign event loops"
This reverts commit ee122077b09430da54ca09750589b37326a22d85. Reason for revert: This causes QProcess::readAll() to sometimes return nothing after the process has ended. Fixes: QTBUG-88624 Change-Id: I34fa27ae7fb38cc7c3a1e8eb2fdae2a5775584c2 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io> (cherry picked from commit 23100ee61e33680d20f934dcbc96b57e8da29bf9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/gui/kernel/noqteventloop/tst_noqteventloop.cpp41
-rw-r--r--tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp5
2 files changed, 2 insertions, 44 deletions
diff --git a/tests/auto/gui/kernel/noqteventloop/tst_noqteventloop.cpp b/tests/auto/gui/kernel/noqteventloop/tst_noqteventloop.cpp
index ba0e03af4c..3e19764618 100644
--- a/tests/auto/gui/kernel/noqteventloop/tst_noqteventloop.cpp
+++ b/tests/auto/gui/kernel/noqteventloop/tst_noqteventloop.cpp
@@ -35,8 +35,6 @@
#include <QtGui/qrasterwindow.h>
#include <QtNetwork/qtcpserver.h>
#include <QtNetwork/qtcpsocket.h>
-#include <QtNetwork/qlocalserver.h>
-#include <QtNetwork/qlocalsocket.h>
#include <QtCore/qelapsedtimer.h>
#include <QtCore/qtimer.h>
#include <QtCore/qwineventnotifier.h>
@@ -53,7 +51,6 @@ class tst_NoQtEventLoop : public QObject
private slots:
void consumeMouseEvents();
void consumeSocketEvents();
- void consumeLocalSocketEvents();
void consumeWinEvents_data();
void consumeWinEvents();
void deliverEventsInLivelock();
@@ -321,44 +318,6 @@ void tst_NoQtEventLoop::consumeSocketEvents()
QVERIFY(server.hasPendingConnections());
}
-void tst_NoQtEventLoop::consumeLocalSocketEvents()
-{
- int argc = 1;
- char *argv[] = { const_cast<char *>("test"), 0 };
- QGuiApplication app(argc, argv);
- QLocalServer server;
- QLocalSocket client;
- QSignalSpy readyReadSpy(&client, &QIODevice::readyRead);
-
- QVERIFY(server.listen("consumeLocalSocketEvents"));
- client.connectToServer("consumeLocalSocketEvents");
- QVERIFY(client.waitForConnected(200));
- QVERIFY(server.waitForNewConnection(200));
- QLocalSocket *clientSocket = server.nextPendingConnection();
- QVERIFY(clientSocket);
- QSignalSpy bytesWrittenSpy(clientSocket, &QIODevice::bytesWritten);
- server.close();
-
- bool timeExpired = false;
- QTimer::singleShot(3000, Qt::CoarseTimer, [&timeExpired]() {
- timeExpired = true;
- });
- QVERIFY(clientSocket->putChar(0));
-
- // Exec own message loop
- MSG msg;
- while (::GetMessage(&msg, NULL, 0, 0)) {
- ::TranslateMessage(&msg);
- ::DispatchMessage(&msg);
-
- if (timeExpired || readyReadSpy.count() != 0)
- break;
- }
- QVERIFY(!timeExpired);
- QCOMPARE(bytesWrittenSpy.count(), 1);
- QCOMPARE(readyReadSpy.count(), 1);
-}
-
void tst_NoQtEventLoop::consumeWinEvents_data()
{
QTest::addColumn<bool>("peeking");
diff --git a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
index c4f4fcc207..e481db6644 100644
--- a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
+++ b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
@@ -634,12 +634,11 @@ void tst_QLocalSocket::readBufferOverflow()
QCOMPARE(client.bytesAvailable(), 0);
#ifdef Q_OS_WIN
- // ensure the previous write operation is finished
- QVERIFY(serverSocket->waitForBytesWritten());
-
serverSocket->write(buffer, readBufferSize);
QVERIFY(serverSocket->waitForBytesWritten());
+ // ensure the read completion routine is called
+ SleepEx(100, true);
QVERIFY(client.waitForReadyRead());
QCOMPARE(client.read(buffer, readBufferSize), qint64(readBufferSize));