mgmt: adapt to API changes in ndn-cxx ControlCommand and Dispatcher
Change-Id: I7515353444366d0a36fe962deeae70ef567334ac
diff --git a/tests/daemon/mgmt/manager-base.t.cpp b/tests/daemon/mgmt/manager-base.t.cpp
index cf24989..2fcdd62 100644
--- a/tests/daemon/mgmt/manager-base.t.cpp
+++ b/tests/daemon/mgmt/manager-base.t.cpp
@@ -1,6 +1,6 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/*
- * Copyright (c) 2014-2023, Regents of the University of California,
+ * Copyright (c) 2014-2025, Regents of the University of California,
* Arizona Board of Regents,
* Colorado State University,
* University Pierre & Marie Curie, Sorbonne University,
@@ -29,25 +29,22 @@
namespace nfd::tests {
-class TestCommandVoidParameters : public ControlCommand
+class TestCommandVoidParameters : public ndn::nfd::ControlCommand<TestCommandVoidParameters>
{
-public:
- TestCommandVoidParameters()
- : ControlCommand("test-module", "test-void-parameters")
- {
- }
+ NDN_CXX_CONTROL_COMMAND(TestCommandVoidParameters, "test-module", "test-void-parameters");
};
-class TestCommandRequireName : public ControlCommand
+const TestCommandVoidParameters::RequestFormat TestCommandVoidParameters::s_requestFormat;
+
+class TestCommandRequireName : public ndn::nfd::ControlCommand<TestCommandRequireName>
{
-public:
- TestCommandRequireName()
- : ControlCommand("test-module", "test-require-name")
- {
- m_requestValidator.required(ndn::nfd::CONTROL_PARAMETER_NAME);
- }
+ NDN_CXX_CONTROL_COMMAND(TestCommandRequireName, "test-module", "test-require-name");
};
+const TestCommandRequireName::RequestFormat TestCommandRequireName::s_requestFormat =
+ RequestFormat()
+ .required(ndn::nfd::CONTROL_PARAMETER_NAME);
+
class DummyManager final : public ManagerBase
{
public:
@@ -59,12 +56,12 @@
private:
ndn::mgmt::Authorization
- makeAuthorization(const std::string& verb) final
+ makeAuthorization(const std::string&) final
{
return [] (const Name& prefix, const Interest& interest,
- const ndn::mgmt::ControlParameters* params,
- ndn::mgmt::AcceptContinuation accept,
- ndn::mgmt::RejectContinuation reject) {
+ const ndn::mgmt::ControlParametersBase* params,
+ const ndn::mgmt::AcceptContinuation& accept,
+ const ndn::mgmt::RejectContinuation& reject) {
accept("requester");
};
}
@@ -98,6 +95,10 @@
testRegisterCommandHandler("/localhost/nfd/test-module/test-require-name");
BOOST_CHECK(!wasHandlerCalled);
+
+ testRegisterCommandHandler(Name("/localhost/nfd/test-module/test-require-name")
+ .append(ControlParameters().setName("test-name").wireEncode()));
+ BOOST_CHECK(wasHandlerCalled);
}
BOOST_AUTO_TEST_CASE(RegisterStatusDataset)
@@ -149,19 +150,6 @@
.getDefaultKey().getDefaultCertificate().getName().toUri());
}
-BOOST_AUTO_TEST_CASE(ValidateParameters)
-{
- ControlParameters params;
- TestCommandVoidParameters commandVoidParams;
- TestCommandRequireName commandRequireName;
-
- BOOST_CHECK_EQUAL(ManagerBase::validateParameters(commandVoidParams, params), true); // succeeds
- BOOST_CHECK_EQUAL(ManagerBase::validateParameters(commandRequireName, params), false); // fails
-
- params.setName("test-name");
- BOOST_CHECK_EQUAL(ManagerBase::validateParameters(commandRequireName, params), true); // succeeds
-}
-
BOOST_AUTO_TEST_CASE(MakeRelPrefix)
{
auto generatedRelPrefix = m_manager.makeRelPrefix("test-verb");
diff --git a/tests/daemon/mgmt/manager-common-fixture.hpp b/tests/daemon/mgmt/manager-common-fixture.hpp
index 954cef2..c8f5498 100644
--- a/tests/daemon/mgmt/manager-common-fixture.hpp
+++ b/tests/daemon/mgmt/manager-common-fixture.hpp
@@ -1,6 +1,6 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/*
- * Copyright (c) 2014-2023, Regents of the University of California,
+ * Copyright (c) 2014-2025, Regents of the University of California,
* Arizona Board of Regents,
* Colorado State University,
* University Pierre & Marie Curie, Sorbonne University,
@@ -112,7 +112,7 @@
* @brief Check a specified response data with the expected ControlResponse.
*
* @param idx the index of the specified Data in m_responses
- * @param expectedDataName the expected name of this Data
+ * @param expectedName the expected name of this Data
* @param expectedResponse the expected ControlResponse
* @param expectedContentType the expected content type of this Data, use -1 to skip this check
*
@@ -157,7 +157,8 @@
class ManagerFixtureWithAuthenticator : public ManagerCommonFixture
{
public:
- /** \brief Grant m_identityName privilege to sign commands for the management module.
+ /**
+ * \brief Grant m_identityName privilege to sign commands for the management module.
*/
void
setPrivilege(const std::string& privilege);
diff --git a/tests/tools/nfdc/rib-module.t.cpp b/tests/tools/nfdc/rib-module.t.cpp
index f349dfd..cc01018 100644
--- a/tests/tools/nfdc/rib-module.t.cpp
+++ b/tests/tools/nfdc/rib-module.t.cpp
@@ -1,6 +1,6 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/*
- * Copyright (c) 2014-2023, Regents of the University of California,
+ * Copyright (c) 2014-2025, Regents of the University of California,
* Arizona Board of Regents,
* Colorado State University,
* University Pierre & Marie Curie, Sorbonne University,
@@ -207,9 +207,8 @@
}
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/rib/register");
- ndn::nfd::RibRegisterCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::RibRegisterCommand::validateRequest(req);
+ ndn::nfd::RibRegisterCommand::applyDefaultsToRequest(req);
BOOST_CHECK_EQUAL(req.getName(), "/vxXoEaWeDB");
BOOST_CHECK_EQUAL(req.getFaceId(), 10156);
BOOST_CHECK_EQUAL(req.getOrigin(), ndn::nfd::ROUTE_ORIGIN_STATIC);
@@ -235,9 +234,8 @@
}
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/rib/register");
- ndn::nfd::RibRegisterCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::RibRegisterCommand::validateRequest(req);
+ ndn::nfd::RibRegisterCommand::applyDefaultsToRequest(req);
BOOST_CHECK_EQUAL(req.getName(), "/FLQAsaYnYf");
BOOST_CHECK_EQUAL(req.getFaceId(), 2249);
BOOST_CHECK_EQUAL(req.getOrigin(), 17591);
@@ -280,9 +278,8 @@
}
else if (Name("/localhost/nfd/faces/create").isPrefixOf(interest.getName())) {
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/faces/create");
- ndn::nfd::FaceCreateCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::FaceCreateCommand::validateRequest(req);
+ ndn::nfd::FaceCreateCommand::applyDefaultsToRequest(req);
BOOST_CHECK_EQUAL(req.getUri(), "udp4://202.83.168.28:6363");
ControlParameters resp = req;
@@ -297,15 +294,13 @@
}
else if (Name("/localhost/nfd/rib/register").isPrefixOf(interest.getName())) {
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/rib/register");
- ndn::nfd::RibRegisterCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::RibRegisterCommand::validateRequest(req);
+ ndn::nfd::RibRegisterCommand::applyDefaultsToRequest(req);
BOOST_CHECK_EQUAL(req.getName(), "/634jfAfdf");
BOOST_CHECK_EQUAL(req.getFaceId(), 255);
BOOST_CHECK_EQUAL(req.getOrigin(), 17591);
BOOST_CHECK_EQUAL(req.getCost(), 702);
- BOOST_CHECK_EQUAL(req.getFlags(), ndn::nfd::ROUTE_FLAG_CHILD_INHERIT |
- ndn::nfd::ROUTE_FLAG_CAPTURE);
+ BOOST_CHECK_EQUAL(req.getFlags(), ndn::nfd::ROUTE_FLAG_CHILD_INHERIT | ndn::nfd::ROUTE_FLAG_CAPTURE);
BOOST_REQUIRE_EQUAL(req.hasExpirationPeriod(), true);
BOOST_REQUIRE_EQUAL(req.getExpirationPeriod(), 727411987_ms);
@@ -405,9 +400,8 @@
}
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/rib/unregister");
- ndn::nfd::RibUnregisterCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::RibUnregisterCommand::validateRequest(req);
+ ndn::nfd::RibUnregisterCommand::applyDefaultsToRequest(req);
BOOST_CHECK_EQUAL(req.getName(), "/2B5NUGjpt");
BOOST_CHECK_EQUAL(req.getFaceId(), 10156);
BOOST_CHECK_EQUAL(req.getOrigin(), ndn::nfd::ROUTE_ORIGIN_STATIC);
@@ -429,9 +423,8 @@
}
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/rib/unregister");
- ndn::nfd::RibUnregisterCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::RibUnregisterCommand::validateRequest(req);
+ ndn::nfd::RibUnregisterCommand::applyDefaultsToRequest(req);
BOOST_CHECK_EQUAL(req.getName(), "/wHdNn0BtUF");
BOOST_CHECK_EQUAL(req.getFaceId(), 2249);
BOOST_CHECK_EQUAL(req.getOrigin(), 15246);
@@ -454,9 +447,8 @@
}
ControlParameters req = MOCK_NFD_MGMT_REQUIRE_COMMAND_IS("/localhost/nfd/rib/unregister");
- ndn::nfd::RibUnregisterCommand cmd;
- cmd.validateRequest(req);
- cmd.applyDefaultsToRequest(req);
+ ndn::nfd::RibUnregisterCommand::validateRequest(req);
+ ndn::nfd::RibUnregisterCommand::applyDefaultsToRequest(req);
BOOST_TEST_INFO_SCOPE("FaceId=" << req.getFaceId());
BOOST_CHECK_EQUAL(req.getName(), "/nm5y8X8b2");
BOOST_CHECK(faceIds.erase(req.getFaceId()));