From 48c02d3909eea438f983ef221ff3f2bab04b3c90 Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Sun, 23 Apr 2017 18:29:20 -0700 Subject: [PATCH] UT fixes and code fixes for found bugs --- src/MissionManager/MissionControllerManagerTest.cc | 7 ++++--- src/MissionManager/MissionControllerManagerTest.h | 2 ++ src/MissionManager/MissionManager.cc | 3 ++- src/MissionManager/MissionManagerTest.cc | 8 ++++---- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/MissionManager/MissionControllerManagerTest.cc b/src/MissionManager/MissionControllerManagerTest.cc index ad0b719c8..b0cfcefac 100644 --- a/src/MissionManager/MissionControllerManagerTest.cc +++ b/src/MissionManager/MissionControllerManagerTest.cc @@ -35,9 +35,10 @@ void MissionControllerManagerTest::_initForFirmwareType(MAV_AUTOPILOT firmwareTy _missionManager = qgcApp()->toolbox()->multiVehicleManager()->activeVehicle()->missionManager(); QVERIFY(_missionManager); - _rgMissionManagerSignals[newMissionItemsAvailableSignalIndex] = SIGNAL(newMissionItemsAvailable(bool)); - _rgMissionManagerSignals[inProgressChangedSignalIndex] = SIGNAL(inProgressChanged(bool)); - _rgMissionManagerSignals[errorSignalIndex] = SIGNAL(error(int, const QString&)); + _rgMissionManagerSignals[newMissionItemsAvailableSignalIndex] = SIGNAL(newMissionItemsAvailable(bool)); + _rgMissionManagerSignals[sendCompleteSignalIndex] = SIGNAL(sendComplete(void)); + _rgMissionManagerSignals[inProgressChangedSignalIndex] = SIGNAL(inProgressChanged(bool)); + _rgMissionManagerSignals[errorSignalIndex] = SIGNAL(error(int, const QString&)); _multiSpyMissionManager = new MultiSignalSpy(); Q_CHECK_PTR(_multiSpyMissionManager); diff --git a/src/MissionManager/MissionControllerManagerTest.h b/src/MissionManager/MissionControllerManagerTest.h index 1962805a9..1d4ccaf5d 100644 --- a/src/MissionManager/MissionControllerManagerTest.h +++ b/src/MissionManager/MissionControllerManagerTest.h @@ -55,6 +55,7 @@ protected: typedef enum { newMissionItemsAvailableSignalIndex = 0, + sendCompleteSignalIndex, inProgressChangedSignalIndex, errorSignalIndex, maxSignalIndex @@ -62,6 +63,7 @@ protected: typedef enum { newMissionItemsAvailableSignalMask = 1 << newMissionItemsAvailableSignalIndex, + sendCompleteSignalMask = 1 << sendCompleteSignalIndex, inProgressChangedSignalMask = 1 << inProgressChangedSignalIndex, errorSignalMask = 1 << errorSignalIndex, } MissionManagerSignalMask_t; diff --git a/src/MissionManager/MissionManager.cc b/src/MissionManager/MissionManager.cc index 85274f7df..db35e2fca 100644 --- a/src/MissionManager/MissionManager.cc +++ b/src/MissionManager/MissionManager.cc @@ -868,8 +868,9 @@ void MissionManager::_finishTransaction(bool success) // First thing we do is clear the transaction. This way inProgesss is off when we signal transaction complete. TransactionType_t currentTransactionType = _transactionInProgress; _transactionInProgress = TransactionNone; - if (_transactionInProgress != TransactionNone) { + if (currentTransactionType != TransactionNone) { _transactionInProgress = TransactionNone; + qDebug() << "inProgressChanged"; emit inProgressChanged(false); } diff --git a/src/MissionManager/MissionManagerTest.cc b/src/MissionManager/MissionManagerTest.cc index 99b16e382..4a2fdc796 100644 --- a/src/MissionManager/MissionManagerTest.cc +++ b/src/MissionManager/MissionManagerTest.cc @@ -60,9 +60,8 @@ void MissionManagerTest::_writeItems(MockLinkMissionItemHandler::FailureMode_t f // writeMissionItems should emit these signals before returning: // inProgressChanged - // newMissionItemsAvailable QVERIFY(_missionManager->inProgress()); - QCOMPARE(_multiSpyMissionManager->checkSignalByMask(inProgressChangedSignalMask | newMissionItemsAvailableSignalMask), true); + QCOMPARE(_multiSpyMissionManager->checkSignalByMask(inProgressChangedSignalMask), true); _checkInProgressValues(true); _multiSpyMissionManager->clearAllSignals(); @@ -93,8 +92,9 @@ void MissionManagerTest::_writeItems(MockLinkMissionItemHandler::FailureMode_t f // Wait for write sequence to complete. We should get: // inProgressChanged(false) signal - _multiSpyMissionManager->waitForSignalByIndex(inProgressChangedSignalIndex, _missionManagerSignalWaitTime); - QCOMPARE(_multiSpyMissionManager->checkOnlySignalByMask(inProgressChangedSignalMask), true); + // sednComplete signal + _multiSpyMissionManager->waitForSignalByIndex(sendCompleteSignalIndex, _missionManagerSignalWaitTime); + QCOMPARE(_multiSpyMissionManager->checkSignalByMask(inProgressChangedSignalMask | sendCompleteSignalMask), true); // Validate inProgressChanged signal value _checkInProgressValues(false); -- 2.22.0