diff --git a/tests/chunks/consumer.t.cpp b/tests/get/consumer.t.cpp
similarity index 92%
rename from tests/chunks/consumer.t.cpp
rename to tests/get/consumer.t.cpp
index 741ee03..f43eac6 100644
--- a/tests/chunks/consumer.t.cpp
+++ b/tests/get/consumer.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2024, Regents of the University of California,
+ * Copyright (c) 2016-2025, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -23,9 +23,9 @@
  * @author Andrea Tosatto
  */
 
-#include "tools/chunks/catchunks/consumer.hpp"
-#include "tools/chunks/catchunks/discover-version.hpp"
-#include "tools/chunks/catchunks/pipeline-interests.hpp"
+#include "tools/get/consumer.hpp"
+#include "tools/get/discover-version.hpp"
+#include "tools/get/pipeline-interests.hpp"
 
 #include "tests/test-common.hpp"
 #include "tests/io-fixture.hpp"
@@ -35,12 +35,12 @@
 
 #include <boost/test/tools/output_test_stream.hpp>
 
-namespace ndn::chunks::tests {
+namespace ndn::tests {
 
-using namespace ndn::tests;
+using namespace ndn::get;
 using boost::test_tools::output_test_stream;
 
-BOOST_AUTO_TEST_SUITE(Chunks)
+BOOST_AUTO_TEST_SUITE(Get)
 BOOST_AUTO_TEST_SUITE(TestConsumer)
 
 BOOST_AUTO_TEST_CASE(InOrderData)
@@ -167,6 +167,6 @@
 }
 
 BOOST_AUTO_TEST_SUITE_END() // TestConsumer
-BOOST_AUTO_TEST_SUITE_END() // Chunks
+BOOST_AUTO_TEST_SUITE_END() // Get
 
-} // namespace ndn::chunks::tests
+} // namespace ndn::tests
diff --git a/tests/chunks/discover-version.t.cpp b/tests/get/discover-version.t.cpp
similarity index 95%
rename from tests/chunks/discover-version.t.cpp
rename to tests/get/discover-version.t.cpp
index 6b429b8..b4cc519 100644
--- a/tests/chunks/discover-version.t.cpp
+++ b/tests/get/discover-version.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2024, Regents of the University of California,
+ * Copyright (c) 2016-2025, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -23,7 +23,7 @@
  * @author Chavoosh Ghasemi
  */
 
-#include "tools/chunks/catchunks/discover-version.hpp"
+#include "tools/get/discover-version.hpp"
 
 #include "tests/test-common.hpp"
 #include "tests/io-fixture.hpp"
@@ -32,9 +32,9 @@
 #include <ndn-cxx/metadata-object.hpp>
 #include <ndn-cxx/util/dummy-client-face.hpp>
 
-namespace ndn::chunks::tests {
+namespace ndn::tests {
 
-using namespace ndn::tests;
+using namespace ndn::get;
 
 class DiscoverVersionFixture : public IoFixture, public KeyChainFixture
 {
@@ -68,7 +68,7 @@
   bool isDiscoveryFinished = false;
 };
 
-BOOST_AUTO_TEST_SUITE(Chunks)
+BOOST_AUTO_TEST_SUITE(Get)
 BOOST_FIXTURE_TEST_SUITE(TestDiscoverVersion, DiscoverVersionFixture)
 
 BOOST_AUTO_TEST_CASE(Disabled)
@@ -211,6 +211,6 @@
 }
 
 BOOST_AUTO_TEST_SUITE_END() // TestDiscoverVersion
-BOOST_AUTO_TEST_SUITE_END() // Chunks
+BOOST_AUTO_TEST_SUITE_END() // Get
 
-} // namespace ndn::chunks::tests
+} // namespace ndn::tests
diff --git a/tests/chunks/pipeline-interests-aimd.t.cpp b/tests/get/pipeline-interests-aimd.t.cpp
similarity index 98%
rename from tests/chunks/pipeline-interests-aimd.t.cpp
rename to tests/get/pipeline-interests-aimd.t.cpp
index 4688ee4..b35c01c 100644
--- a/tests/chunks/pipeline-interests-aimd.t.cpp
+++ b/tests/get/pipeline-interests-aimd.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2024, Regents of the University of California,
+ * Copyright (c) 2016-2025, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -25,15 +25,13 @@
  * @author Klaus Schneider
  */
 
-#include "tools/chunks/catchunks/pipeline-interests-aimd.hpp"
+#include "tools/get/pipeline-interests-aimd.hpp"
 
 #include "pipeline-interests-fixture.hpp"
 
 #include <cmath>
 
-namespace ndn::chunks::tests {
-
-using namespace ndn::tests;
+namespace ndn::tests {
 
 class PipelineInterestAimdFixture : public PipelineInterestsFixture
 {
@@ -74,7 +72,7 @@
   static constexpr double MARGIN = 0.001;
 };
 
-BOOST_AUTO_TEST_SUITE(Chunks)
+BOOST_AUTO_TEST_SUITE(Get)
 BOOST_FIXTURE_TEST_SUITE(TestPipelineInterestsAimd, PipelineInterestAimdFixture)
 
 BOOST_AUTO_TEST_CASE(SlowStart)
@@ -640,6 +638,6 @@
 }
 
 BOOST_AUTO_TEST_SUITE_END() // TestPipelineInterestsAimd
-BOOST_AUTO_TEST_SUITE_END() // Chunks
+BOOST_AUTO_TEST_SUITE_END() // Get
 
-} // namespace ndn::chunks::tests
+} // namespace ndn::tests
diff --git a/tests/chunks/pipeline-interests-cubic.t.cpp b/tests/get/pipeline-interests-cubic.t.cpp
similarity index 98%
rename from tests/chunks/pipeline-interests-cubic.t.cpp
rename to tests/get/pipeline-interests-cubic.t.cpp
index 6a36105..c1f3b60 100644
--- a/tests/chunks/pipeline-interests-cubic.t.cpp
+++ b/tests/get/pipeline-interests-cubic.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2024, Regents of the University of California,
+ * Copyright (c) 2016-2025, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -25,13 +25,11 @@
  * @author Klaus Schneider
  */
 
-#include "tools/chunks/catchunks/pipeline-interests-cubic.hpp"
+#include "tools/get/pipeline-interests-cubic.hpp"
 
 #include "pipeline-interests-fixture.hpp"
 
-namespace ndn::chunks::tests {
-
-using namespace ndn::tests;
+namespace ndn::tests {
 
 class PipelineInterestCubicFixture : public PipelineInterestsFixture
 {
@@ -72,7 +70,7 @@
   static constexpr double MARGIN = 0.001;
 };
 
-BOOST_AUTO_TEST_SUITE(Chunks)
+BOOST_AUTO_TEST_SUITE(Get)
 BOOST_FIXTURE_TEST_SUITE(TestPipelineInterestsCubic, PipelineInterestCubicFixture)
 
 BOOST_AUTO_TEST_CASE(SlowStart)
@@ -160,7 +158,6 @@
   BOOST_CHECK_EQUAL(pipeline->m_nRetransmitted, 3);
   BOOST_CHECK_EQUAL(pipeline->m_nTimeouts,
       pipeline->m_nRetransmitted + pipeline->m_nSkippedRetx);
-
 }
 
 BOOST_AUTO_TEST_CASE(CongestionMarksWithCwa)
@@ -553,8 +550,7 @@
   BOOST_CHECK_EQUAL(face.getNPendingInterests(), 0);
 }
 
-
 BOOST_AUTO_TEST_SUITE_END() // TestPipelineInterestsCubic
-BOOST_AUTO_TEST_SUITE_END() // Chunks
+BOOST_AUTO_TEST_SUITE_END() // Get
 
-} // namespace ndn::chunks::tests
+} // namespace ndn::tests
diff --git a/tests/chunks/pipeline-interests-fixed.t.cpp b/tests/get/pipeline-interests-fixed.t.cpp
similarity index 96%
rename from tests/chunks/pipeline-interests-fixed.t.cpp
rename to tests/get/pipeline-interests-fixed.t.cpp
index 24f14e9..c6e5464 100644
--- a/tests/chunks/pipeline-interests-fixed.t.cpp
+++ b/tests/get/pipeline-interests-fixed.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2024, Regents of the University of California,
+ * Copyright (c) 2016-2025, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -24,14 +24,14 @@
  * @author Chavoosh Ghasemi
  */
 
-#include "tools/chunks/catchunks/pipeline-interests-fixed.hpp"
-#include "tools/chunks/catchunks/data-fetcher.hpp"
+#include "tools/get/pipeline-interests-fixed.hpp"
+#include "tools/get/data-fetcher.hpp"
 
 #include "pipeline-interests-fixture.hpp"
 
 #include <cmath>
 
-namespace ndn::chunks::tests {
+namespace ndn::tests {
 
 class PipelineInterestFixedFixture : public PipelineInterestsFixture
 {
@@ -58,7 +58,7 @@
   PipelineInterestsFixed* pipeline;
 };
 
-BOOST_AUTO_TEST_SUITE(Chunks)
+BOOST_AUTO_TEST_SUITE(Get)
 BOOST_FIXTURE_TEST_SUITE(TestPipelineInterestsFixed, PipelineInterestFixedFixture)
 
 BOOST_AUTO_TEST_CASE(FullPipeline)
@@ -296,6 +296,6 @@
 }
 
 BOOST_AUTO_TEST_SUITE_END() // TestPipelineInterests
-BOOST_AUTO_TEST_SUITE_END() // Chunks
+BOOST_AUTO_TEST_SUITE_END() // Get
 
-} // namespace ndn::chunks::tests
+} // namespace ndn::tests
diff --git a/tests/chunks/pipeline-interests-fixture.hpp b/tests/get/pipeline-interests-fixture.hpp
similarity index 86%
rename from tests/chunks/pipeline-interests-fixture.hpp
rename to tests/get/pipeline-interests-fixture.hpp
index 4e42223..543f817 100644
--- a/tests/chunks/pipeline-interests-fixture.hpp
+++ b/tests/get/pipeline-interests-fixture.hpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2016-2024, Regents of the University of California,
+ * Copyright (c) 2016-2025, Regents of the University of California,
  *                          Colorado State University,
  *                          University Pierre & Marie Curie, Sorbonne University.
  *
@@ -26,19 +26,19 @@
  * @author Chavoosh Ghasemi
  */
 
-#ifndef NDN_TOOLS_TESTS_CHUNKS_PIPELINE_INTERESTS_FIXTURE_HPP
-#define NDN_TOOLS_TESTS_CHUNKS_PIPELINE_INTERESTS_FIXTURE_HPP
+#ifndef NDN_TOOLS_TESTS_GET_PIPELINE_INTERESTS_FIXTURE_HPP
+#define NDN_TOOLS_TESTS_GET_PIPELINE_INTERESTS_FIXTURE_HPP
 
-#include "tools/chunks/catchunks/pipeline-interests.hpp"
+#include "tools/get/pipeline-interests.hpp"
 
 #include "tests/test-common.hpp"
 #include "tests/io-fixture.hpp"
 
 #include <ndn-cxx/util/dummy-client-face.hpp>
 
-namespace ndn::chunks::tests {
+namespace ndn::tests {
 
-using namespace ndn::tests;
+using namespace ndn::get;
 
 class PipelineInterestsFixture : public IoFixture
 {
@@ -86,6 +86,6 @@
   std::unique_ptr<PipelineInterests> m_pipeline;
 };
 
-} // namespace ndn::chunks::tests
+} // namespace ndn::tests
 
-#endif // NDN_TOOLS_TESTS_CHUNKS_PIPELINE_INTERESTS_FIXTURE_HPP
+#endif // NDN_TOOLS_TESTS_GET_PIPELINE_INTERESTS_FIXTURE_HPP
