summaryrefslogtreecommitdiff
path: root/test/buildtool/build_engine/base_maps/entity_name.test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/buildtool/build_engine/base_maps/entity_name.test.cpp')
-rw-r--r--test/buildtool/build_engine/base_maps/entity_name.test.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/buildtool/build_engine/base_maps/entity_name.test.cpp b/test/buildtool/build_engine/base_maps/entity_name.test.cpp
new file mode 100644
index 00000000..ddcea10b
--- /dev/null
+++ b/test/buildtool/build_engine/base_maps/entity_name.test.cpp
@@ -0,0 +1,22 @@
+#include "catch2/catch.hpp"
+#include "src/buildtool/build_engine/base_maps/entity_name.hpp"
+
+TEST_CASE("Normal module names") {
+ using EN = BuildMaps::Base::EntityName;
+ CHECK(EN::normal_module_name("foo/bar") == "foo/bar");
+ CHECK(EN::normal_module_name("foo/bar/") == "foo/bar");
+ CHECK(EN::normal_module_name("./foo/bar") == "foo/bar");
+ CHECK(EN::normal_module_name("/foo/bar") == "foo/bar");
+ CHECK(EN::normal_module_name("/foo/bar/.") == "foo/bar");
+ CHECK(EN::normal_module_name("/foo/bar/baz/..") == "foo/bar");
+ CHECK(EN::normal_module_name("foo/baz/../bar") == "foo/bar");
+ CHECK(EN::normal_module_name("../../../foo/bar") == "foo/bar");
+
+ CHECK(EN::normal_module_name("").empty());
+ CHECK(EN::normal_module_name(".").empty());
+ CHECK(EN::normal_module_name("./").empty());
+ CHECK(EN::normal_module_name("./.").empty());
+ CHECK(EN::normal_module_name("/").empty());
+ CHECK(EN::normal_module_name("/.").empty());
+ CHECK(EN::normal_module_name("..").empty());
+}