diff options
Diffstat (limited to 'tests/auto/statemachine/tst_statemachine.cpp')
-rw-r--r-- | tests/auto/statemachine/tst_statemachine.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/tests/auto/statemachine/tst_statemachine.cpp b/tests/auto/statemachine/tst_statemachine.cpp index 69d38b6..4575737 100644 --- a/tests/auto/statemachine/tst_statemachine.cpp +++ b/tests/auto/statemachine/tst_statemachine.cpp @@ -56,6 +56,8 @@ private Q_SLOTS: void running(); void invokeStateMachine(); + + void multipleInvokableServices(); // QTBUG-61484 }; void tst_StateMachine::stateNames_data() @@ -384,7 +386,6 @@ void tst_StateMachine::doneDotStateEvent() finishedSpy.wait(5000); QCOMPARE(finishedSpy.count(), 1); QCOMPARE(stateMachine->activeStateNames(true).size(), 1); - qDebug() << stateMachine->activeStateNames(true); QVERIFY(stateMachine->activeStateNames(true).contains(QLatin1String("success"))); } @@ -428,6 +429,22 @@ void tst_StateMachine::invokeStateMachine() QTRY_VERIFY(subMachine->activeStateNames().contains("here")); } +void tst_StateMachine::multipleInvokableServices() +{ + QScopedPointer<QScxmlStateMachine> stateMachine( + QScxmlStateMachine::fromFile(QString(":/tst_statemachine/multipleinvokableservices.scxml"))); + QVERIFY(!stateMachine.isNull()); + + QSignalSpy finishedSpy(stateMachine.data(), SIGNAL(finished())); + stateMachine->start(); + QCOMPARE(stateMachine->isRunning(), true); + + finishedSpy.wait(5000); + QCOMPARE(finishedSpy.count(), 1); + QCOMPARE(stateMachine->activeStateNames(true).size(), 1); + QVERIFY(stateMachine->activeStateNames(true).contains(QLatin1String("success"))); +} + QTEST_MAIN(tst_StateMachine) #include "tst_statemachine.moc" |