/
SneakBug8
/
Project-Alice
Обзор
Документация
Войти
/
SneakBug8
/
Project-Alice
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
tests/defines_tests.cpp
38 строк
1 KB
schombert
remove use of local user settings
03 мар 2024, 03:27
03 мар 2024, 03:27
da88287
Код
Авторство
О чём код?
#include "catch.hpp" #include "system_state.hpp" #include "defines.hpp" TEST_CASE("defines tests", "[defines_tests]") { std::unique_ptr<sys::state> state = std::make_unique<sys::state>(); add_root(state->common_fs, NATIVE(".")); auto root = get_root(state->common_fs); auto common = open_directory(root, NATIVE("common")); #ifndef IGNORE_REAL_FILES_TESTS auto file = open_file(common, NATIVE("defines.lua")); REQUIRE(file); if (file) { parsers::error_handler err(""); auto content = view_contents(*file); parsing::defines d{}; // Overriden by file values d.greatness_days = 0.f; d.parse_file(*state, content.data, err); REQUIRE(d.greatness_days == 365.0f); sys::date date{0}; auto ymds = date.to_ymd(state->start_date); REQUIRE(ymds.year == 1836); REQUIRE(ymds.month == 1); REQUIRE(ymds.day == 1); auto ymde = date.to_ymd(state->end_date); REQUIRE(ymde.year == 1935); REQUIRE(ymde.month == 12); REQUIRE(ymde.day == 31); REQUIRE(err.accumulated_errors.length() == size_t(0)); } #endif }