management: Controller accepts CommandOptions
refs #2039
The following are deprecated:
* Controller::start overloads, except the overload taking CommandOptions
* Controller::Sign typedef
* Controller::getDefaultCommandTimeout
* ControlCommand::getPrefix
* ControlCommand::getRequestName(ControlParameters)
Change-Id: I8c405498597bdca115b71eec87acf23d28a266b1
diff --git a/tests/unit-tests/management/test-nfd-controller.cpp b/tests/unit-tests/management/test-nfd-controller.cpp
index 2ec9285..478fdaa 100644
--- a/tests/unit-tests/management/test-nfd-controller.cpp
+++ b/tests/unit-tests/management/test-nfd-controller.cpp
@@ -76,7 +76,7 @@
BOOST_FIXTURE_TEST_CASE(CommandSuccess, CommandFixture)
{
ControlParameters parameters;
- parameters.setUri("tcp://example.com");
+ parameters.setUri("tcp4://192.0.2.1:6363");
BOOST_CHECK_NO_THROW(controller.start<FaceCreateCommand>(
parameters,
@@ -88,8 +88,8 @@
const Interest& requestInterest = face->m_sentInterests[0];
FaceCreateCommand command;
- BOOST_CHECK(command.getPrefix().isPrefixOf(requestInterest.getName()));
- // 9 components: ndn:/localhost/nfd/face/create/<parameters>/<signed Interest x4>
+ BOOST_CHECK(Name("/localhost/nfd/faces/create").isPrefixOf(requestInterest.getName()));
+ // 9 components: ndn:/localhost/nfd/faces/create/<parameters>/<signed Interest x4>
BOOST_REQUIRE_EQUAL(requestInterest.getName().size(), 9);
ControlParameters request;
// 4th component: <parameters>
@@ -133,7 +133,7 @@
BOOST_FIXTURE_TEST_CASE(CommandErrorCode, CommandFixture)
{
ControlParameters parameters;
- parameters.setUri("tcp://example.com");
+ parameters.setUri("tcp4://192.0.2.1:6363");
BOOST_CHECK_NO_THROW(controller.start<FaceCreateCommand>(
parameters,
@@ -160,7 +160,7 @@
BOOST_FIXTURE_TEST_CASE(CommandInvalidResponse, CommandFixture)
{
ControlParameters parameters;
- parameters.setUri("tcp://example.com");
+ parameters.setUri("tcp4://192.0.2.1:6363");
BOOST_CHECK_NO_THROW(controller.start<FaceCreateCommand>(
parameters,
@@ -188,6 +188,49 @@
BOOST_REQUIRE_EQUAL(commandFailHistory.size(), 1);
}
+BOOST_FIXTURE_TEST_CASE(OptionsPrefix, CommandFixture)
+{
+ ControlParameters parameters;
+ parameters.setName("/ndn/com/example");
+ parameters.setFaceId(400);
+
+ CommandOptions options;
+ options.setPrefix("/localhop/net/example/router1/nfd");
+
+ BOOST_CHECK_NO_THROW(controller.start<RibRegisterCommand>(
+ parameters,
+ commandSucceedCallback,
+ commandFailCallback,
+ options));
+ face->processEvents(time::milliseconds(1));
+
+ BOOST_REQUIRE_EQUAL(face->m_sentInterests.size(), 1);
+ const Interest& requestInterest = face->m_sentInterests[0];
+
+ FaceCreateCommand command;
+ BOOST_CHECK(Name("/localhop/net/example/router1/nfd/rib/register").isPrefixOf(
+ requestInterest.getName()));
+}
+
+BOOST_FIXTURE_TEST_CASE(OptionsTimeout, CommandFixture)
+{
+ ControlParameters parameters;
+ parameters.setUri("tcp4://192.0.2.1:6363");
+
+ CommandOptions options;
+ options.setTimeout(time::milliseconds(50));
+
+ BOOST_CHECK_NO_THROW(controller.start<FaceCreateCommand>(
+ parameters,
+ commandSucceedCallback,
+ commandFailCallback,
+ options));
+ face->processEvents(time::milliseconds(300));
+
+ BOOST_REQUIRE_EQUAL(commandFailHistory.size(), 1);
+ BOOST_CHECK_EQUAL(commandFailHistory[0].get<0>(), Controller::ERROR_TIMEOUT);
+}
+
BOOST_AUTO_TEST_SUITE_END()
} // namespace tests