diff --git a/tests/tools/nfdc/face-module.t.cpp b/tests/tools/nfdc/face-module.t.cpp
index de68fe6..cf5e893 100644
--- a/tests/tools/nfdc/face-module.t.cpp
+++ b/tests/tools/nfdc/face-module.t.cpp
@@ -59,10 +59,10 @@
             .setFacePersistency(ndn::nfd::FACE_PERSISTENCY_PERMANENT)
             .setLinkType(ndn::nfd::LINK_TYPE_MULTI_ACCESS)
             .setNInInterests(22562)
-            .setNInDatas(22031)
+            .setNInData(22031)
             .setNInNacks(63)
             .setNOutInterests(30121)
-            .setNOutDatas(20940)
+            .setNOutData(20940)
             .setNOutNacks(1218)
             .setNInBytes(2522915)
             .setNOutBytes(1353592);
@@ -75,10 +75,10 @@
             .setLinkType(ndn::nfd::LINK_TYPE_POINT_TO_POINT)
             .setFlagBit(ndn::nfd::BIT_LOCAL_FIELDS_ENABLED, true)
             .setNInInterests(18998)
-            .setNInDatas(26701)
+            .setNInData(26701)
             .setNInNacks(147)
             .setNOutInterests(34779)
-            .setNOutDatas(17028)
+            .setNOutData(17028)
             .setNOutNacks(1176)
             .setNInBytes(4672308)
             .setNOutBytes(8957187);
@@ -116,10 +116,10 @@
            .setFacePersistency(ndn::nfd::FACE_PERSISTENCY_PERSISTENT)
            .setLinkType(ndn::nfd::LINK_TYPE_POINT_TO_POINT)
            .setNInInterests(2325)
-           .setNInDatas(1110)
+           .setNInData(1110)
            .setNInNacks(79)
            .setNOutInterests(2278)
-           .setNOutDatas(485)
+           .setNOutData(485)
            .setNOutNacks(841)
            .setNInBytes(4716834)
            .setNOutBytes(308108);
@@ -182,10 +182,10 @@
            .setFacePersistency(ndn::nfd::FACE_PERSISTENCY_ON_DEMAND)
            .setLinkType(ndn::nfd::LINK_TYPE_POINT_TO_POINT)
            .setNInInterests(28975)
-           .setNInDatas(28232)
+           .setNInData(28232)
            .setNInNacks(212)
            .setNOutInterests(19525)
-           .setNOutDatas(30993)
+           .setNOutData(30993)
            .setNOutNacks(1038)
            .setNInBytes(13307258)
            .setNOutBytes(6231946);
@@ -531,12 +531,12 @@
       <packetCounters>
         <incomingPackets>
           <nInterests>22562</nInterests>
-          <nDatas>22031</nDatas>
+          <nData>22031</nData>
           <nNacks>63</nNacks>
         </incomingPackets>
         <outgoingPackets>
           <nInterests>30121</nInterests>
-          <nDatas>20940</nDatas>
+          <nData>20940</nData>
           <nNacks>1218</nNacks>
         </outgoingPackets>
       </packetCounters>
@@ -558,12 +558,12 @@
       <packetCounters>
         <incomingPackets>
           <nInterests>18998</nInterests>
-          <nDatas>26701</nDatas>
+          <nData>26701</nData>
           <nNacks>147</nNacks>
         </incomingPackets>
         <outgoingPackets>
           <nInterests>34779</nInterests>
-          <nDatas>17028</nDatas>
+          <nData>17028</nData>
           <nNacks>1176</nNacks>
         </outgoingPackets>
       </packetCounters>
@@ -595,10 +595,10 @@
           .setFacePersistency(ndn::nfd::FACE_PERSISTENCY_PERMANENT)
           .setLinkType(ndn::nfd::LINK_TYPE_MULTI_ACCESS)
           .setNInInterests(22562)
-          .setNInDatas(22031)
+          .setNInData(22031)
           .setNInNacks(63)
           .setNOutInterests(30121)
-          .setNOutDatas(20940)
+          .setNOutData(20940)
           .setNOutNacks(1218)
           .setNInBytes(2522915)
           .setNOutBytes(1353592);
@@ -611,10 +611,10 @@
           .setLinkType(ndn::nfd::LINK_TYPE_POINT_TO_POINT)
           .setFlagBit(ndn::nfd::BIT_LOCAL_FIELDS_ENABLED, true)
           .setNInInterests(18998)
-          .setNInDatas(26701)
+          .setNInData(26701)
           .setNInNacks(147)
           .setNOutInterests(34779)
-          .setNOutDatas(17028)
+          .setNOutData(17028)
           .setNOutNacks(1176)
           .setNInBytes(4672308)
           .setNOutBytes(8957187);
diff --git a/tests/tools/nfdc/forwarder-general-module.t.cpp b/tests/tools/nfdc/forwarder-general-module.t.cpp
index ed026f2..688f9dd 100644
--- a/tests/tools/nfdc/forwarder-general-module.t.cpp
+++ b/tests/tools/nfdc/forwarder-general-module.t.cpp
@@ -59,7 +59,7 @@
   }
 
 private:
-  virtual void
+  void
   signDatasetReply(Data& data) override
   {
     m_keyChain.sign(data, ndn::security::signingByIdentity("/nfd-status/test-nfdid"));
@@ -81,12 +81,12 @@
     <packetCounters>
       <incomingPackets>
         <nInterests>20699052</nInterests>
-        <nDatas>5598070</nDatas>
+        <nData>5598070</nData>
         <nNacks>7230</nNacks>
       </incomingPackets>
       <outgoingPackets>
         <nInterests>36501092</nInterests>
-        <nDatas>5671942</nDatas>
+        <nData>5671942</nData>
         <nNacks>26762</nNacks>
       </outgoingPackets>
     </packetCounters>
@@ -107,8 +107,8 @@
             nCsEntries=65536
           nInInterests=20699052
          nOutInterests=36501092
-              nInDatas=5598070
-             nOutDatas=5671942
+               nInData=5598070
+              nOutData=5671942
               nInNacks=7230
              nOutNacks=26762
 )TEXT").substr(1);
@@ -126,10 +126,10 @@
          .setNMeasurementsEntries(1)
          .setNCsEntries(65536)
          .setNInInterests(20699052)
-         .setNInDatas(5598070)
+         .setNInData(5598070)
          .setNInNacks(7230)
          .setNOutInterests(36501092)
-         .setNOutDatas(5671942)
+         .setNOutData(5671942)
          .setNOutNacks(26762);
   this->sendDataset("/localhost/nfd/status/general", payload);
   this->prepareStatusOutput();
