poke: don't respond if the Interest cannot be satisfied
Change-Id: I616e974ff041a4a2c9fd738e98c83c28a21a47de
This commit is contained in:
1 parent
b3ae634086
commit
c5243b40f4
2 files changed
+29
-7
No files matched your search
@@ -82,7 +82,6 @@ BOOST_AUTO_TEST_CASE(Basic)
|
||||
|
||||
face.receive(*makeInterest("/poke/test"));
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
io.run();
|
||||
|
||||
BOOST_CHECK(poke->getResult() == NdnPoke::Result::DATA_SENT);
|
||||
BOOST_REQUIRE_EQUAL(face.sentData.size(), 1);
|
||||
@@ -98,6 +97,27 @@ BOOST_AUTO_TEST_CASE(Basic)
|
||||
BOOST_CHECK_EQUAL(face.sentInterests.back().getName().getPrefix(4), "/localhost/nfd/rib/unregister");
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(NoMatch)
|
||||
{
|
||||
initialize();
|
||||
|
||||
poke->start();
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
|
||||
face.receive(*makeInterest("/poke/test/foo"));
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
|
||||
BOOST_CHECK(poke->getResult() == NdnPoke::Result::UNKNOWN);
|
||||
BOOST_CHECK_EQUAL(face.sentData.size(), 0);
|
||||
|
||||
face.receive(*makeInterest("/poke/test"));
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
|
||||
BOOST_CHECK(poke->getResult() == NdnPoke::Result::DATA_SENT);
|
||||
BOOST_REQUIRE_EQUAL(face.sentData.size(), 1);
|
||||
BOOST_CHECK_EQUAL(face.sentData.back().getName(), "/poke/test");
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(FreshnessPeriod)
|
||||
{
|
||||
auto options = makeDefaultOptions();
|
||||
@@ -109,7 +129,6 @@ BOOST_AUTO_TEST_CASE(FreshnessPeriod)
|
||||
|
||||
face.receive(*makeInterest("/poke/test"));
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
io.run();
|
||||
|
||||
BOOST_CHECK(poke->getResult() == NdnPoke::Result::DATA_SENT);
|
||||
BOOST_REQUIRE_EQUAL(face.sentData.size(), 1);
|
||||
@@ -131,7 +150,6 @@ BOOST_AUTO_TEST_CASE(FinalBlockId)
|
||||
|
||||
face.receive(*makeInterest(options.name));
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
io.run();
|
||||
|
||||
BOOST_CHECK(poke->getResult() == NdnPoke::Result::DATA_SENT);
|
||||
BOOST_REQUIRE_EQUAL(face.sentData.size(), 1);
|
||||
@@ -153,7 +171,6 @@ BOOST_AUTO_TEST_CASE(DigestSha256)
|
||||
|
||||
face.receive(*makeInterest("/poke/test"));
|
||||
this->advanceClocks(io, 1_ms, 10);
|
||||
io.run();
|
||||
|
||||
BOOST_CHECK(poke->getResult() == NdnPoke::Result::DATA_SENT);
|
||||
BOOST_REQUIRE_EQUAL(face.sentData.size(), 1);
|
||||
|
||||
@@ -94,9 +94,14 @@ NdnPoke::onInterest(const Interest& interest, const Data& data)
|
||||
std::cerr << "INTEREST: " << interest << std::endl;
|
||||
}
|
||||
|
||||
m_timeoutEvent.cancel();
|
||||
m_registeredPrefix.cancel();
|
||||
sendData(data);
|
||||
if (interest.matchesData(data)) {
|
||||
m_timeoutEvent.cancel();
|
||||
m_registeredPrefix.cancel();
|
||||
sendData(data);
|
||||
}
|
||||
else if (m_options.isVerbose) {
|
||||
std::cerr << "Interest cannot be satisfied" << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
Reference in new issue
Block a user