@@ -329,14 +329,17 @@ void TestQgsTaskManager::addTask()
329
329
330
330
QSignalSpy spy ( &manager, &QgsTaskManager::taskAdded );
331
331
332
+ // null task
333
+ QVERIFY ( !manager.addTask ( nullptr ) );
334
+
332
335
// add a task
333
336
CancelableTask *task = new CancelableTask ();
334
337
long id = manager.addTask ( task );
335
- QCOMPARE ( id, 0L );
338
+ QCOMPARE ( id, 1L );
336
339
QCOMPARE ( manager.tasks ().count (), 1 );
337
340
QCOMPARE ( manager.count (), 1 );
338
341
QCOMPARE ( spy.count (), 1 );
339
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 0LL );
342
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
340
343
while ( !task->isActive () )
341
344
{
342
345
QCoreApplication::processEvents ();
@@ -346,18 +349,18 @@ void TestQgsTaskManager::addTask()
346
349
QCOMPARE ( task->status (), QgsTask::Running );
347
350
348
351
// retrieve task
349
- QCOMPARE ( manager.task ( 0L ), task );
352
+ QCOMPARE ( manager.task ( 1L ), task );
350
353
QCOMPARE ( manager.tasks ().at ( 0 ), task );
351
354
352
355
// add a second task
353
356
CancelableTask *task2 = new CancelableTask ();
354
357
id = manager.addTask ( task2 );
355
- QCOMPARE ( id, 1L );
358
+ QCOMPARE ( id, 2L );
356
359
QCOMPARE ( manager.tasks ().count (), 2 );
357
360
QCOMPARE ( manager.count (), 2 );
358
- QCOMPARE ( manager.task ( 0L ), task );
361
+ QCOMPARE ( manager.task ( 1L ), task );
359
362
QVERIFY ( manager.tasks ().contains ( task ) );
360
- QCOMPARE ( manager.task ( 1L ), task2 );
363
+ QCOMPARE ( manager.task ( 2L ), task2 );
361
364
QVERIFY ( manager.tasks ().contains ( task2 ) );
362
365
while ( !task2->isActive () )
363
366
{
@@ -368,7 +371,7 @@ void TestQgsTaskManager::addTask()
368
371
QCOMPARE ( task2->status (), QgsTask::Running );
369
372
370
373
QCOMPARE ( spy.count (), 2 );
371
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
374
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 2LL );
372
375
373
376
task->cancel ();
374
377
task2->cancel ();
@@ -649,8 +652,8 @@ void TestQgsTaskManager::taskId()
649
652
TestTask *task3 = new TestTask ();
650
653
651
654
QCOMPARE ( manager.taskId ( nullptr ), -1L );
652
- QCOMPARE ( manager.taskId ( task ), 0L );
653
- QCOMPARE ( manager.taskId ( task2 ), 1L );
655
+ QCOMPARE ( manager.taskId ( task ), 1L );
656
+ QCOMPARE ( manager.taskId ( task2 ), 2L );
654
657
QCOMPARE ( manager.taskId ( task3 ), -1L );
655
658
656
659
delete task3;
@@ -725,15 +728,15 @@ void TestQgsTaskManager::progressChanged()
725
728
726
729
QCOMPARE ( task->progress (), 50.0 );
727
730
QCOMPARE ( spy.count (), 1 );
728
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 0LL );
731
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
729
732
QCOMPARE ( spy.last ().at ( 1 ).toDouble (), 50.0 );
730
733
// multiple running tasks, so finalTaskProgressChanged(double) should not be emitted
731
734
QCOMPARE ( spy2.count (), 0 );
732
735
733
736
task2->emitProgressChanged ( 75.0 );
734
737
QCOMPARE ( task2->progress (), 75.0 );
735
738
QCOMPARE ( spy.count (), 2 );
736
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
739
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 2LL );
737
740
QCOMPARE ( spy.last ().at ( 1 ).toDouble (), 75.0 );
738
741
QCOMPARE ( spy2.count (), 0 );
739
742
@@ -799,7 +802,7 @@ void TestQgsTaskManager::statusChanged()
799
802
flushEvents ();
800
803
801
804
QCOMPARE ( spy.count (), 1 );
802
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
805
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 2LL );
803
806
QCOMPARE ( static_cast < QgsTask::TaskStatus >( spy.last ().at ( 1 ).toInt () ), QgsTask::Running );
804
807
805
808
task->terminate ();
@@ -809,7 +812,7 @@ void TestQgsTaskManager::statusChanged()
809
812
}
810
813
flushEvents ();
811
814
QCOMPARE ( spy.count (), 2 );
812
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 0LL );
815
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
813
816
QCOMPARE ( static_cast < QgsTask::TaskStatus >( spy.last ().at ( 1 ).toInt () ), QgsTask::Terminated );
814
817
815
818
task2->finish ();
@@ -819,7 +822,7 @@ void TestQgsTaskManager::statusChanged()
819
822
}
820
823
flushEvents ();
821
824
QCOMPARE ( spy.count (), 3 );
822
- QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 1LL );
825
+ QCOMPARE ( spy.last ().at ( 0 ).toLongLong (), 2LL );
823
826
QCOMPARE ( static_cast < QgsTask::TaskStatus >( spy.last ().at ( 1 ).toInt () ), QgsTask::Complete );
824
827
}
825
828
@@ -1126,7 +1129,7 @@ void TestQgsTaskManager::managerWithSubTasks()
1126
1129
QCOMPARE ( spyProgress.count (), 0 );
1127
1130
subTask->emitProgressChanged ( 50 );
1128
1131
QCOMPARE ( spyProgress.count (), 1 );
1129
- QCOMPARE ( spyProgress.last ().at ( 0 ).toLongLong (), 0LL );
1132
+ QCOMPARE ( spyProgress.last ().at ( 0 ).toLongLong (), 1LL );
1130
1133
// subTask itself is 50% done, so with it's child task it's sitting at overall 25% done
1131
1134
// (one task 50%, one task not started)
1132
1135
// parent task has two tasks (itself + subTask), and subTask is 25% done.... so parent
@@ -1135,11 +1138,11 @@ void TestQgsTaskManager::managerWithSubTasks()
1135
1138
1136
1139
subsubTask->emitProgressChanged ( 100 );
1137
1140
QCOMPARE ( spyProgress.count (), 2 );
1138
- QCOMPARE ( spyProgress.last ().at ( 0 ).toLongLong (), 0LL );
1141
+ QCOMPARE ( spyProgress.last ().at ( 0 ).toLongLong (), 1LL );
1139
1142
QCOMPARE ( spyProgress.last ().at ( 1 ).toInt (), 38 );
1140
1143
parent->emitProgressChanged ( 50 );
1141
1144
QCOMPARE ( spyProgress.count (), 3 );
1142
- QCOMPARE ( spyProgress.last ().at ( 0 ).toLongLong (), 0LL );
1145
+ QCOMPARE ( spyProgress.last ().at ( 0 ).toLongLong (), 1LL );
1143
1146
QCOMPARE ( spyProgress.last ().at ( 1 ).toInt (), 63 );
1144
1147
1145
1148
// manager should not emit statusChanged signals for subtasks
@@ -1152,7 +1155,7 @@ void TestQgsTaskManager::managerWithSubTasks()
1152
1155
}
1153
1156
flushEvents ();
1154
1157
QCOMPARE ( statusSpy.count (), 1 );
1155
- QCOMPARE ( statusSpy.last ().at ( 0 ).toLongLong (), 0LL );
1158
+ QCOMPARE ( statusSpy.last ().at ( 0 ).toLongLong (), 1LL );
1156
1159
QCOMPARE ( static_cast < QgsTask::TaskStatus >( statusSpy.last ().at ( 1 ).toInt () ), QgsTask::Running );
1157
1160
1158
1161
subTask->finish ();
@@ -1170,7 +1173,7 @@ void TestQgsTaskManager::managerWithSubTasks()
1170
1173
}
1171
1174
flushEvents ();
1172
1175
QCOMPARE ( statusSpy.count (), 2 );
1173
- QCOMPARE ( statusSpy.last ().at ( 0 ).toLongLong (), 0LL );
1176
+ QCOMPARE ( statusSpy.last ().at ( 0 ).toLongLong (), 1LL );
1174
1177
QCOMPARE ( static_cast < QgsTask::TaskStatus >( statusSpy.last ().at ( 1 ).toInt () ), QgsTask::Complete );
1175
1178
1176
1179
0 commit comments