diff --git a/tests/unit-tests/helper/ndn-global-routing-helper.t.cpp b/tests/unit-tests/helper/ndn-global-routing-helper.t.cpp
index 40da7b9..d73adde 100644
--- a/tests/unit-tests/helper/ndn-global-routing-helper.t.cpp
+++ b/tests/unit-tests/helper/ndn-global-routing-helper.t.cpp
@@ -21,7 +21,7 @@
 
 #include "model/ndn-global-router.hpp"
 #include "model/ndn-l3-protocol.hpp"
-#include "model/ndn-net-device-link-service.hpp"
+#include "model/ndn-net-device-transport.hpp"
 
 #include "ns3/channel.h"
 #include "ns3/net-device.h"
@@ -93,10 +93,10 @@
     bool isFirst = true;
     for (auto& nextHop : entry.getNextHops()) {
       auto& face = nextHop.getFace();
-      auto linkService = dynamic_cast<NetDeviceLinkService*>(face.getLinkService());
-      if (linkService == nullptr)
+      auto transport = dynamic_cast<NetDeviceTransport*>(face.getTransport());
+      if (transport == nullptr)
         continue;
-      BOOST_CHECK_EQUAL(Names::FindName(linkService->GetNetDevice()->GetChannel()->GetDevice(1)->GetNode()), "C1");
+      BOOST_CHECK_EQUAL(Names::FindName(transport->GetNetDevice()->GetChannel()->GetDevice(1)->GetNode()), "C1");
       isFirst = false;
     }
   }
@@ -138,10 +138,10 @@
     bool isFirst = true;
     for (auto& nextHop : entry.getNextHops()) {
       auto& face = nextHop.getFace();
-      auto linkService = dynamic_cast<NetDeviceLinkService*>(face.getLinkService());
-      if (linkService == nullptr)
+      auto transport = dynamic_cast<NetDeviceTransport*>(face.getTransport());
+      if (transport == nullptr)
         continue;
-      BOOST_CHECK_EQUAL(Names::FindName(linkService->GetNetDevice()->GetChannel()->GetDevice(1)->GetNode()), "B2");
+      BOOST_CHECK_EQUAL(Names::FindName(transport->GetNetDevice()->GetChannel()->GetDevice(1)->GetNode()), "B2");
       isFirst = false;
     }
   }
