@@ -173,17 +173,20 @@ TEST_F(MaintenanceManagerTest,stopMaintenance)
173173 status = InvokeServiceMethod (" org.rdk.MaintenanceManager" ," getMaintenanceActivityStatus" ,params1, results1);
174174 if ((status == Core::ERROR_NONE) &&
175175 results1.HasLabel (" maintenanceStatus" ) &&
176- (results1[" maintenanceStatus" ].String () == " MAINTENANCE_STARTED" )) {
176+ bool maintenanceStarted = false ;
177+ while (retries-- > 0 ) {
178+ status = InvokeServiceMethod (" org.rdk.MaintenanceManager" ," getMaintenanceActivityStatus" ,params1, results1);
179+ if (results1[" maintenanceStatus" ].String () == " MAINTENANCE_STARTED" ) {
180+ maintenanceStarted = true ;
177181 break ;
178182 }
179183 sleep (1 );
180184 }
181185
182186 // Verify maintenance is running
183- ASSERT_EQ (status, Core::ERROR_NONE)
184- << " getMaintenanceActivityStatus failed" ;
185- ASSERT_EQ (results1[" maintenanceStatus" ].String (), " MAINTENANCE_STARTED" )
186- << " Maintenance did not start within timeout" ;
187+ ASSERT_TRUE (maintenanceStarted)
188+ << " Maintenance did not start within timeout. Last status: "
189+ << results1[" maintenanceStatus" ].String ();
187190
188191 // Now stop the active maintenance
189192 status = InvokeServiceMethod (" org.rdk.MaintenanceManager" ," stopMaintenance" ,params1, results1);
0 commit comments