mirai/tests/test.cpp

45 lines
1.3 KiB
C++
Raw Normal View History

2024-04-19 13:52:17 +02:00
/*
* Mirai. Copyright (C) 2024 Vyn
* This file is licensed under version 3 of the GNU General Public License (GPL-3.0-only)
* The license can be found in the LICENSE file or at https://www.gnu.org/licenses/gpl-3.0.txt
*/
// TODO this is just a quick setup for later
#include "core/Mirai.h"
#include "core/TaskItem.h"
#include "core/TodoMd.h"
#include <catch2/catch_test_macros.hpp>
TEST_CASE("Creating task from string")
2024-04-19 13:52:17 +02:00
{
SECTION("Task with all properties")
{
auto task = mirai::TodoMdFormat::StringToTask(
"- [X] 08:00-10:00 > This is a test -- #mirai", "2024-04-19"
);
REQUIRE(task.date == "2024-04-19");
REQUIRE(task.tags.size() == 1);
REQUIRE(task.tags[0] == "mirai");
REQUIRE(task.text == "This is a test");
REQUIRE(task.state == mirai::DONE);
REQUIRE(task.startTime == "08:00");
REQUIRE(task.endTime == "10:00");
}
SECTION("Task with all properties 2")
{
auto task = mirai::TodoMdFormat::StringToTask(
"- [ ] 09:00-17:00 > This is another test -- #mirai #feature", "2024-04-20"
);
REQUIRE(task.date == "2024-04-20");
REQUIRE(task.tags.size() == 2);
REQUIRE(task.tags[0] == "mirai");
REQUIRE(task.tags[1] == "feature");
REQUIRE(task.text == "This is another test");
REQUIRE(task.state == mirai::TODO);
REQUIRE(task.startTime == "09:00");
REQUIRE(task.endTime == "17:00");
}
2024-04-19 13:52:17 +02:00
}