raycaster/tests/config.cpp
2026-06-16 04:38:38 -04:00

40 lines
905 B
C++

#include <fuc2/testing.hpp>
#include "game/config.hpp"
#include <iostream>
using namespace fuc2;
namespace config_tests {
void test_confirm_basic_config_loader_ops() {
settings::Config::set_base_dir("./");
auto config = settings::get("devices");
auto data_list = config.json();
auto the_keys = config.keys();
CHECK(the_keys.size() > 0);
for(auto& [key, data] : data_list.items()) {
auto wide1 = config.wstring(key, "name");
auto& comps = data["components"];
for(auto& comp_data : comps) {
CHECK(comp_data.contains("_type"));
}
}
auto indexed = settings::get("tests/config_test.json");
auto& test_0 = indexed[0];
CHECK(test_0["test"] == 0);
auto& test_1 = indexed[1];
CHECK(test_1["test"] == 1);
}
fuc2::Set TESTS{
.name="config",
.tests={
TEST(test_confirm_basic_config_loader_ops),
}
};
}