diff --git a/tests/unit-tests/config-files/config-ca-5 b/tests/unit-tests/config-files/config-ca-5
index 0d1e6b3..f867534 100644
--- a/tests/unit-tests/config-files/config-ca-5
+++ b/tests/unit-tests/config-files/config-ca-5
@@ -24,6 +24,8 @@
   ],
   "name-assignment":
   {
-     "param": "/group/email"
+     "param": "/group/email",
+     "param": "/group/name",
+     "random": ""
   }
 }
\ No newline at end of file
diff --git a/tests/unit-tests/configuration.t.cpp b/tests/unit-tests/configuration.t.cpp
index 6ad1577..87de3f2 100644
--- a/tests/unit-tests/configuration.t.cpp
+++ b/tests/unit-tests/configuration.t.cpp
@@ -58,8 +58,10 @@
   std::vector<std::tuple<std::string, std::string>> params;
   params.emplace_back("email", "1@1.edu");
   params.emplace_back("group", "irl");
-  BOOST_CHECK_EQUAL(config.m_nameAssignmentFunc(params).size(), 1);
+  params.emplace_back("name", "ndncert");
+  BOOST_CHECK_EQUAL(config.m_nameAssignmentFunc(params).size(), 3);
   BOOST_CHECK_EQUAL(config.m_nameAssignmentFunc(params)[0], Name("/irl/1@1.edu"));
+  BOOST_CHECK_EQUAL(config.m_nameAssignmentFunc(params)[1], Name("/irl/ndncert"));
 }
 
 BOOST_AUTO_TEST_CASE(CAConfigFileWithErrors)
diff --git a/tests/unit-tests/name-assignment.t.cpp b/tests/unit-tests/name-assignment.t.cpp
index 1fc7f6a..1e7dd0e 100644
--- a/tests/unit-tests/name-assignment.t.cpp
+++ b/tests/unit-tests/name-assignment.t.cpp
@@ -21,6 +21,7 @@
 #include <name-assignments/assignment-random.hpp>
 #include <name-assignments/assignment-param.hpp>
 #include <name-assignments/assignment-hash.hpp>
+#include <name-assignments/assignment-or.hpp>
 #include "test-common.hpp"
 
 namespace ndn {
@@ -71,6 +72,40 @@
   BOOST_CHECK_EQUAL(func(requirements).begin()->size(), 1);
 }
 
+BOOST_AUTO_TEST_CASE(NameAssignmentOr)
+{
+  AssignmentParam paramAssignment;
+  AssignmentOr orAssignment;
+  std::list<NameAssignmentFunc> func2Subfuncs;
+  auto func1 = orAssignment.getFunction(func2Subfuncs);
+  BOOST_CHECK_EQUAL(func1(std::vector<std::tuple<std::string, std::string>>()).size(), 0);
+
+  auto funcUnit = paramAssignment.getFunction("/abc/xyz/");
+  func2Subfuncs.push_back(funcUnit);
+  func2Subfuncs.push_back(funcUnit);
+  auto func2 = orAssignment.getFunction(func2Subfuncs);
+  std::list<NameAssignmentFunc> func3Subfuncs;
+  func3Subfuncs.push_back(func2);
+  func3Subfuncs.push_back(funcUnit);
+  auto func3 = orAssignment.getFunction(func3Subfuncs);
+  std::vector<std::tuple<std::string, std::string>> requirements;
+  requirements.emplace_back("abc", "123");
+  BOOST_CHECK_EQUAL(func3(requirements).size(), 0);
+  requirements.emplace_back("xyz", "789");
+  BOOST_CHECK_EQUAL(func3(requirements).size(), 3);
+}
+
+BOOST_AUTO_TEST_CASE(NameAssignmentOrOperatorString)
+{
+  AssignmentOr orAssignment;
+  auto func = orAssignment.getFunction(R"({"param": "/abc/xyz/", "param": "/abc/xyz"})");
+  std::vector<std::tuple<std::string, std::string>> requirements;
+  requirements.emplace_back("abc", "123");
+  BOOST_CHECK_EQUAL(func(requirements).size(), 0);
+  requirements.emplace_back("xyz", "789");
+  BOOST_CHECK_EQUAL(func(requirements).size(), 2);
+}
+
 BOOST_AUTO_TEST_SUITE_END()
 
 }  // namespace tests
