aboutsummaryrefslogtreecommitdiffstats
path: root/nihil.ucl/tests/parse.cc
diff options
context:
space:
mode:
authorLexi Winter <lexi@le-fay.org>2025-07-01 17:07:04 +0100
committerLexi Winter <lexi@le-fay.org>2025-07-01 17:07:04 +0100
commit2e2d1bd3b6c7776b77c33b94f30ead89367a71e6 (patch)
tree54d37ffadf8e677938d9b7a28e4e9b71be1e75c1 /nihil.ucl/tests/parse.cc
parent36427c0966faa7aecd586b397ed9b845f18172f5 (diff)
downloadnihil-2e2d1bd3b6c7776b77c33b94f30ead89367a71e6.tar.gz
nihil-2e2d1bd3b6c7776b77c33b94f30ead89367a71e6.tar.bz2
add nihil.std
Diffstat (limited to 'nihil.ucl/tests/parse.cc')
-rw-r--r--nihil.ucl/tests/parse.cc55
1 files changed, 0 insertions, 55 deletions
diff --git a/nihil.ucl/tests/parse.cc b/nihil.ucl/tests/parse.cc
deleted file mode 100644
index 43ce219..0000000
--- a/nihil.ucl/tests/parse.cc
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * This source code is released into the public domain.
- */
-
-#include <string>
-
-#include <catch2/catch_test_macros.hpp>
-#include <catch2/matchers/catch_matchers_floating_point.hpp>
-
-import nihil.ucl;
-
-TEST_CASE("ucl parse: iterate array", "[ucl]")
-{
- using namespace std::literals;
- using namespace nihil::ucl;
-
- auto err = parse("value = [1, 42, 666];"sv);
- REQUIRE(err);
-
- auto obj = *err;
-
- auto arr = obj["value"];
- REQUIRE(arr.key() == "value");
-
- auto ints = object_cast<array<integer>>(arr);
- REQUIRE(ints);
-
- auto vec = std::vector(std::from_range, *ints);
-
- REQUIRE(vec.size() == 3);
- REQUIRE(vec[0] == 1);
- REQUIRE(vec[1] == 42);
- REQUIRE(vec[2] == 666);
-}
-
-TEST_CASE("ucl parse: iterate hash", "[ucl]")
-{
- using namespace std::literals;
- using namespace nihil::ucl;
-
- auto input = "int = 42; bool = true; str = \"test\";"sv;
- auto obj = parse(input);
- REQUIRE(obj);
-
- for (auto &&[key, value] : *obj) {
- REQUIRE(key == value.key());
-
- if (key == "int")
- REQUIRE(object_cast<integer>(value) == 42);
- else if (key == "bool")
- REQUIRE(object_cast<boolean>(value) == true);
- else if (key == "str")
- REQUIRE(object_cast<string>(value) == "test");
- }
-}