diff options
-rw-r--r-- | launcher/tasks/Task_test.cpp | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/launcher/tasks/Task_test.cpp b/launcher/tasks/Task_test.cpp index a9a28bd0..9b6cc2e5 100644 --- a/launcher/tasks/Task_test.cpp +++ b/launcher/tasks/Task_test.cpp @@ -6,9 +6,22 @@ /* Does nothing. Only used for testing. */ class BasicTask : public Task { Q_OBJECT - public: - explicit BasicTask() : Task() {}; + + friend class TaskTest; + + private: + void executeTask() override {}; +}; + +/* Does nothing. Only used for testing. */ +class BasicTask_MultiStep : public Task { + Q_OBJECT + + friend class TaskTest; + private: + auto isMultiStep() const -> bool override { return true; } + void executeTask() override {}; }; @@ -16,13 +29,26 @@ class TaskTest : public QObject { Q_OBJECT private slots: - void test_SetStatus(){ + void test_SetStatus_NoMultiStep(){ BasicTask t; QString status {"test status"}; t.setStatus(status); QCOMPARE(t.getStatus(), status); + QCOMPARE(t.getStepStatus(), status); + } + + void test_SetStatus_MultiStep(){ + BasicTask_MultiStep t; + QString status {"test status"}; + + t.setStatus(status); + + QCOMPARE(t.getStatus(), status); + // Even though it is multi step, it does not override the getStepStatus method, + // so it should remain the same. + QCOMPARE(t.getStepStatus(), status); } void test_SetProgress(){ |