From 979ee48ca1588495192ec5a8951e31b1a5b4460b Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Wed, 16 Mar 2022 02:42:53 +0100 Subject: [PATCH] QObject: add another couple of tests for broken connect() Connecting to a non-signal should fail, but apparently it doesn't on Windows+MSVC under certain conditions. Task-number: QTBUG-101761 Change-Id: I3e014660e4e5b287242e32307f677bb22ab10a39 Reviewed-by: Thiago Macieira --- tests/auto/corelib/kernel/qobject/tst_qobject.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp index af4b35fb46..f66533e78f 100644 --- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp @@ -4533,6 +4533,17 @@ void tst_QObject::pointerConnect() con = connect(&r1, &ReceiverObject::slot4 , &s, &SenderObject::signal4); QVERIFY(!con); QVERIFY(!QObject::disconnect(con)); + + //connect an arbitrary PMF to a slot + QTest::ignoreMessage(QtWarningMsg, "QObject::connect: signal not found in ReceiverObject"); + con = connect(&r1, &ReceiverObject::reset, &r1, &ReceiverObject::slot1); + QVERIFY(!con); + QVERIFY(!QObject::disconnect(con)); + + QTest::ignoreMessage(QtWarningMsg, "QObject::connect: signal not found in ReceiverObject"); + con = connect(&r1, &ReceiverObject::reset, &r1, [](){}); + QVERIFY(!con); + QVERIFY(!QObject::disconnect(con)); } void tst_QObject::pointerDisconnect()