face: scoped Interest filter
refs #3919
Change-Id: I4e1aed63b2fabe463e9572b99bb3d97b278cabd6
diff --git a/tests/unit/face.t.cpp b/tests/unit/face.t.cpp
index c9b8205..7f4ba07 100644
--- a/tests/unit/face.t.cpp
+++ b/tests/unit/face.t.cpp
@@ -651,6 +651,7 @@
this->advanceClocks(5_s, 20); // wait for command timeout
}));
}
+
BOOST_AUTO_TEST_CASE(RegisterUnregisterPrefixHandle)
{
RegisteredPrefixHandle hdl;
@@ -777,6 +778,24 @@
BOOST_CHECK_EQUAL(hit, 1);
}
+BOOST_AUTO_TEST_CASE(SetInterestFilterHandle)
+{
+ int hit = 0;
+ auto hdl = face.setInterestFilter(Name("/"), bind([&hit] { ++hit; }));
+ face.processEvents(-1_ms);
+
+ face.receive(*makeInterest("/A"));
+ face.processEvents(-1_ms);
+ BOOST_CHECK_EQUAL(hit, 1);
+
+ hdl.cancel();
+ face.processEvents(-1_ms);
+
+ face.receive(*makeInterest("/B"));
+ face.processEvents(-1_ms);
+ BOOST_CHECK_EQUAL(hit, 1);
+}
+
BOOST_AUTO_TEST_SUITE_END() // Producer
BOOST_AUTO_TEST_SUITE(IoRoutines)