summaryrefslogtreecommitdiffstats
path: root/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp')
-rw-r--r--tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp60
1 files changed, 57 insertions, 3 deletions
diff --git a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
index 159f276c77..9887acf7dd 100644
--- a/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
+++ b/tests/auto/network/socket/qlocalsocket/tst_qlocalsocket.cpp
@@ -78,6 +78,9 @@ private slots:
void listenAndConnect_data();
void listenAndConnect();
+ void connectWithOpen();
+ void connectWithOldOpen();
+
void sendData_data();
void sendData();
@@ -267,6 +270,7 @@ void tst_QLocalSocket::socket_basic()
//QCOMPARE(socket.socketDescriptor(), (qintptr)-1);
QCOMPARE(socket.state(), QLocalSocket::UnconnectedState);
QCOMPARE(socket.waitForConnected(0), false);
+ QTest::ignoreMessage(QtWarningMsg, "QLocalSocket::waitForDisconnected() is not allowed in UnconnectedState");
QCOMPARE(socket.waitForDisconnected(0), false);
QCOMPARE(socket.waitForReadyRead(0), false);
@@ -310,6 +314,7 @@ void tst_QLocalSocket::listen()
QVERIFY(server.errorString().isEmpty());
QCOMPARE(server.serverError(), QAbstractSocket::UnknownSocketError);
// already isListening
+ QTest::ignoreMessage(QtWarningMsg, "QLocalServer::listen() called when already listening");
QVERIFY(!server.listen(name));
} else {
QVERIFY(!server.errorString().isEmpty());
@@ -452,6 +457,54 @@ void tst_QLocalSocket::listenAndConnect()
QCOMPARE(spyNewConnection.count(), (canListen ? connections : 0));
}
+void tst_QLocalSocket::connectWithOpen()
+{
+ LocalServer server;
+ QVERIFY(server.listen("tst_qlocalsocket"));
+
+ LocalSocket socket;
+ socket.setServerName("tst_qlocalsocket");
+ QVERIFY(socket.open());
+
+ bool timedOut = true;
+ QVERIFY(server.waitForNewConnection(3000, &timedOut));
+
+#if defined(QT_LOCALSOCKET_TCP)
+ QTest::qWait(250);
+#endif
+ QVERIFY(!timedOut);
+
+ socket.close();
+ server.close();
+}
+
+void tst_QLocalSocket::connectWithOldOpen()
+{
+ class OverriddenOpen : public LocalSocket
+ {
+ public:
+ virtual bool open(OpenMode mode) Q_DECL_OVERRIDE
+ { return QIODevice::open(mode); }
+ };
+
+ LocalServer server;
+ QCOMPARE(server.listen("tst_qlocalsocket"), true);
+
+ OverriddenOpen socket;
+ socket.connectToServer("tst_qlocalsocket");
+
+ bool timedOut = true;
+ QVERIFY(server.waitForNewConnection(3000, &timedOut));
+
+#if defined(QT_LOCALSOCKET_TCP)
+ QTest::qWait(250);
+#endif
+ QVERIFY(!timedOut);
+
+ socket.close();
+ server.close();
+}
+
void tst_QLocalSocket::sendData_data()
{
listenAndConnect_data();
@@ -964,15 +1017,16 @@ void tst_QLocalSocket::writeToClientAndDisconnect()
clientSocket->close();
server.close();
- QTRY_COMPARE(readChannelFinishedSpy.count(), 1);
- QCOMPARE(client.read(buffer, sizeof(buffer)), (qint64)sizeof(buffer));
client.waitForDisconnected();
+ QCOMPARE(readChannelFinishedSpy.count(), 1);
+ QCOMPARE(client.read(buffer, sizeof(buffer)), (qint64)sizeof(buffer));
QCOMPARE(client.state(), QLocalSocket::UnconnectedState);
}
void tst_QLocalSocket::debug()
{
// Make sure this compiles
+ QTest::ignoreMessage(QtDebugMsg, "QLocalSocket::ConnectionRefusedError QLocalSocket::UnconnectedState ");
qDebug() << QLocalSocket::ConnectionRefusedError << QLocalSocket::UnconnectedState;
}
@@ -1104,7 +1158,7 @@ void tst_QLocalSocket::verifyListenWithDescriptor()
QFETCH(bool, abstract);
QFETCH(bool, bound);
- qDebug() << "socket" << path << abstract;
+// qDebug() << "socket" << path << abstract;
int listenSocket;