24 void SlotClosureTest::testDeleteLater ()
29 const auto closure =
new SlotClosure<DeleteLaterPolicy>
36 SIGNAL (someSignal ()),
42 const QPointer<QObject> closurePtr { closure };
44 QCOMPARE (hasRun,
true);
45 QCOMPARE (closurePtr.isNull (),
false);
47 QCoreApplication::sendPostedEvents (
nullptr, QEvent::DeferredDelete);
49 QCOMPARE (closurePtr.isNull (),
true);
52 void SlotClosureTest::testNoDelete ()
57 const auto closure =
new SlotClosure<NoDeletePolicy>
64 SIGNAL (someSignal ()),
70 const QPointer<QObject> closurePtr { closure };
72 QCOMPARE (hasRun,
true);
73 QCOMPARE (closurePtr.isNull (),
false);
75 QCoreApplication::sendPostedEvents (
nullptr, QEvent::DeferredDelete);
77 QCOMPARE (closurePtr.isNull (),
false);
80 void SlotClosureTest::testChoiceDelete ()
85 const auto closure =
new SlotClosure<ChoiceDeletePolicy>
96 SIGNAL (someSignal ()),
99 const QPointer<QObject> closurePtr { closure };
103 QCOMPARE (hasRun,
true);
104 QCOMPARE (closurePtr.isNull (),
false);
106 QCoreApplication::sendPostedEvents (
nullptr, QEvent::DeferredDelete);
108 QCOMPARE (closurePtr.isNull (),
false);
111 QCoreApplication::sendPostedEvents (
nullptr, QEvent::DeferredDelete);
113 QCOMPARE (closurePtr.isNull (),
true);