diff --git a/tests/unit-tests/mgmt/nfd/control-command.t.cpp b/tests/unit-tests/mgmt/nfd/control-command.t.cpp
index d76b67c..3d826cc 100644
--- a/tests/unit-tests/mgmt/nfd/control-command.t.cpp
+++ b/tests/unit-tests/mgmt/nfd/control-command.t.cpp
@@ -309,16 +309,16 @@
   command.validateRequest(p1);
   BOOST_CHECK(Name("/PREFIX/cs/erase").isPrefixOf(command.getRequestName("/PREFIX", p1)));
 
-  // good limit-entries request
+  // good limited request
   ControlParameters p2;
   p2.setName("/IMw1RaLF");
-  p2.setNCsEntries(177);
+  p2.setCount(177);
   command.validateRequest(p2);
 
   // bad request: zero entry
   ControlParameters p3;
   p3.setName("/ahMID1jcib");
-  p3.setNCsEntries(0);
+  p3.setCount(0);
   BOOST_CHECK_THROW(command.validateRequest(p3), ControlCommand::ArgumentError);
 
   // bad request: forbidden field
@@ -334,32 +334,31 @@
   // good normal response
   ControlParameters p1;
   p1.setName("/TwiIwCdR");
-  p1.setNCsEntries(1);
+  p1.setCount(1);
   command.validateResponse(p1);
 
   // good limit exceeded request
   ControlParameters p2;
   p2.setName("/NMsiy44pr");
   p2.setCapacity(360);
-  p2.setNCsEntries(360);
+  p2.setCount(360);
   command.validateResponse(p2);
 
   // good zero-entry response
   ControlParameters p3;
   p3.setName("/5f1LRPh1L");
-  p3.setNCsEntries(0);
+  p3.setCount(0);
   command.validateResponse(p3);
 
-  // bad request: missing NCsEntries
+  // bad request: missing Count
   ControlParameters p4(p1);
-  p4.unsetNCsEntries();
+  p4.unsetCount();
   BOOST_CHECK_THROW(command.validateResponse(p4), ControlCommand::ArgumentError);
 
   // bad request: zero capacity
   ControlParameters p5(p1);
   p5.setCapacity(0);
   BOOST_CHECK_THROW(command.validateResponse(p5), ControlCommand::ArgumentError);
-
 }
 
 BOOST_AUTO_TEST_CASE(StrategyChoiceSet)
diff --git a/tests/unit-tests/mgmt/nfd/control-parameters.t.cpp b/tests/unit-tests/mgmt/nfd/control-parameters.t.cpp
index 14be320..6030060 100644
--- a/tests/unit-tests/mgmt/nfd/control-parameters.t.cpp
+++ b/tests/unit-tests/mgmt/nfd/control-parameters.t.cpp
@@ -43,7 +43,7 @@
   BOOST_CHECK_EQUAL(decoded.hasOrigin(), false);
   BOOST_CHECK_EQUAL(decoded.hasCost(), false);
   BOOST_CHECK_EQUAL(decoded.hasCapacity(), false);
-  BOOST_CHECK_EQUAL(decoded.hasNCsEntries(), false);
+  BOOST_CHECK_EQUAL(decoded.hasCount(), false);
   BOOST_CHECK_EQUAL(decoded.hasFlags(), false);
   BOOST_CHECK_EQUAL(decoded.hasMask(), false);
   BOOST_CHECK_EQUAL(decoded.hasStrategy(), false);
@@ -57,7 +57,7 @@
   input.setOrigin(ROUTE_ORIGIN_NLSR);
   input.setCost(1388);
   input.setCapacity(2632);
-  input.setNCsEntries(3100);
+  input.setCount(3100);
   input.setFlags(0xAFC4);
   input.setMask(0xF7A1);
   input.setStrategy("/strategy-name");
@@ -72,7 +72,7 @@
   BOOST_CHECK_EQUAL(decoded.hasOrigin(), true);
   BOOST_CHECK_EQUAL(decoded.hasCost(), true);
   BOOST_CHECK_EQUAL(decoded.hasCapacity(), true);
-  BOOST_CHECK_EQUAL(decoded.hasNCsEntries(), true);
+  BOOST_CHECK_EQUAL(decoded.hasCount(), true);
   BOOST_CHECK_EQUAL(decoded.hasFlags(), true);
   BOOST_CHECK_EQUAL(decoded.hasMask(), true);
   BOOST_CHECK_EQUAL(decoded.hasStrategy(), true);
@@ -86,7 +86,7 @@
   BOOST_CHECK_EQUAL(decoded.getOrigin(), ROUTE_ORIGIN_NLSR);
   BOOST_CHECK_EQUAL(decoded.getCost(), 1388);
   BOOST_CHECK_EQUAL(decoded.getCapacity(), 2632);
-  BOOST_CHECK_EQUAL(decoded.getNCsEntries(), 3100);
+  BOOST_CHECK_EQUAL(decoded.getCount(), 3100);
   BOOST_CHECK_EQUAL(decoded.getFlags(), 0xAFC4);
   BOOST_CHECK_EQUAL(decoded.getMask(), 0xF7A1);
   BOOST_CHECK_EQUAL(decoded.getStrategy(), "/strategy-name");
@@ -100,7 +100,7 @@
   input.unsetOrigin();
   input.unsetCost();
   input.unsetCapacity();
-  input.unsetNCsEntries();
+  input.unsetCount();
   input.unsetFlags();
   input.unsetMask();
   input.unsetStrategy();
@@ -113,7 +113,7 @@
   BOOST_CHECK_EQUAL(input.hasOrigin(), false);
   BOOST_CHECK_EQUAL(input.hasCost(), false);
   BOOST_CHECK_EQUAL(input.hasCapacity(), false);
-  BOOST_CHECK_EQUAL(input.hasNCsEntries(), false);
+  BOOST_CHECK_EQUAL(input.hasCount(), false);
   BOOST_CHECK_EQUAL(input.hasFlags(), false);
   BOOST_CHECK_EQUAL(input.hasMask(), false);
   BOOST_CHECK_EQUAL(input.hasStrategy(), false);
