aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--launcher/CMakeLists.txt5
-rw-r--r--launcher/tasks/Task_test.cpp42
2 files changed, 47 insertions, 0 deletions
diff --git a/launcher/CMakeLists.txt b/launcher/CMakeLists.txt
index 05af3503..42348792 100644
--- a/launcher/CMakeLists.txt
+++ b/launcher/CMakeLists.txt
@@ -413,6 +413,11 @@ set(TASKS_SOURCES
tasks/SequentialTask.cpp
)
+add_unit_test(Task
+ SOURCES tasks/Task_test.cpp
+ LIBS Launcher_logic
+ )
+
set(SETTINGS_SOURCES
# Settings
settings/INIFile.cpp
diff --git a/launcher/tasks/Task_test.cpp b/launcher/tasks/Task_test.cpp
new file mode 100644
index 00000000..a9a28bd0
--- /dev/null
+++ b/launcher/tasks/Task_test.cpp
@@ -0,0 +1,42 @@
+#include <QTest>
+#include "TestUtil.h"
+
+#include "Task.h"
+
+/* Does nothing. Only used for testing. */
+class BasicTask : public Task {
+ Q_OBJECT
+ public:
+ explicit BasicTask() : Task() {};
+ private:
+ void executeTask() override {};
+};
+
+class TaskTest : public QObject {
+ Q_OBJECT
+
+ private slots:
+ void test_SetStatus(){
+ BasicTask t;
+ QString status {"test status"};
+
+ t.setStatus(status);
+
+ QCOMPARE(t.getStatus(), status);
+ }
+
+ void test_SetProgress(){
+ BasicTask t;
+ int current = 42;
+ int total = 207;
+
+ t.setProgress(current, total);
+
+ QCOMPARE(t.getProgress(), current);
+ QCOMPARE(t.getTotalProgress(), total);
+ }
+};
+
+QTEST_GUILESS_MAIN(TaskTest)
+
+#include "Task_test.moc"