From efa1266f10e90c0c46f47cc06645422142cb2d9f Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Wed, 3 Sep 2025 12:42:10 +0800 Subject: common -> base in test dir. --- test/base/PropertyTreeTest.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test/base/PropertyTreeTest.cpp (limited to 'test/base/PropertyTreeTest.cpp') diff --git a/test/base/PropertyTreeTest.cpp b/test/base/PropertyTreeTest.cpp new file mode 100644 index 00000000..24d7ca9e --- /dev/null +++ b/test/base/PropertyTreeTest.cpp @@ -0,0 +1,26 @@ +#include "cru/base/PropertyTree.h" + +#include + +TEST_CASE("PropertyTree", "[property_tree]") { + using cru::PropertySubTreeRef; + using cru::PropertyTree; + + PropertyTree tree({ + {u"k1", u"v1"}, + {u"k2", u"v2"}, + {u"k3.sub", u"v3"}, + }); + + REQUIRE(tree.GetValue(u"k1") == u"v1"); + REQUIRE(tree.GetValue(u"k2") == u"v2"); + REQUIRE(tree.GetValue(u"k3.sub") == u"v3"); + + PropertySubTreeRef sub_tree = tree.GetSubTreeRef(u"k3"); + REQUIRE(sub_tree.GetValue(u"sub") == u"v3"); + + PropertySubTreeRef root_tree = sub_tree.GetParent(); + REQUIRE(root_tree.GetValue(u"k1") == u"v1"); + REQUIRE(root_tree.GetValue(u"k2") == u"v2"); + REQUIRE(root_tree.GetValue(u"k3.sub") == u"v3"); +} -- cgit v1.2.3