From 3e1ecdd74cfb85d1c73f96289fc2114708881c6b Mon Sep 17 00:00:00 2001 From: Kari Oikarinen Date: Mon, 26 Mar 2018 16:30:25 +0300 Subject: tst_QStateMachine: Don't use unconditional waits Instead use QSignalSpy to wait directly for the expected events. Change-Id: I319302ea7177fe690b5d885347c505454904518e Reviewed-by: Sami Nurmenniemi Reviewed-by: Erik Verbruggen --- .../auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp') diff --git a/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp b/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp index 17763f31f9..810698fb4e 100644 --- a/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp +++ b/tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp @@ -4667,11 +4667,14 @@ void tst_QStateMachine::clonedSignals() s1->addTransition(t1); machine.setInitialState(s1); + QSignalSpy startedSpy(&machine, &QStateMachine::started); machine.start(); - QTest::qWait(1); + QVERIFY(startedSpy.wait()); + QSignalSpy transitionSpy(t1, &CloneSignalTransition::triggered); emitter.emitSignalWithDefaultArg(); - QTest::qWait(1); + QTRY_COMPARE(transitionSpy.count(), 1); + QCOMPARE(t1->eventSignalIndex, emitter.metaObject()->indexOfSignal("signalWithDefaultArg()")); TEST_ACTIVE_CHANGED(s1, 2); TEST_ACTIVE_CHANGED(s2, 1); -- cgit v1.2.3