diff --git a/tests/fw/broadcast-strategy.cpp b/tests/fw/broadcast-strategy.cpp
index 15928be..26d0687 100644
--- a/tests/fw/broadcast-strategy.cpp
+++ b/tests/fw/broadcast-strategy.cpp
@@ -41,7 +41,7 @@
   shared_ptr<pit::Entry> pitEntry = pitInsertResult.first;
 
   strategy.afterReceiveInterest(*face3, interest, fibEntry, pitEntry);
-  BOOST_CHECK_EQUAL(strategy.m_rebuffPendingInterestHistory.size(), 0);
+  BOOST_CHECK_EQUAL(strategy.m_rejectPendingInterestHistory.size(), 0);
   BOOST_CHECK_EQUAL(strategy.m_sendInterestHistory.size(), 2);
   bool hasFace1 = false;
   bool hasFace2 = false;
@@ -58,7 +58,7 @@
   BOOST_CHECK(hasFace1 && hasFace2);
 }
 
-BOOST_AUTO_TEST_CASE(Rebuff)
+BOOST_AUTO_TEST_CASE(Reject)
 {
   resetGlobalIoService();
   Forwarder forwarder;
@@ -79,7 +79,7 @@
   shared_ptr<pit::Entry> pitEntry = pitInsertResult.first;
 
   strategy.afterReceiveInterest(*face1, interest, fibEntry, pitEntry);
-  BOOST_CHECK_EQUAL(strategy.m_rebuffPendingInterestHistory.size(), 1);
+  BOOST_CHECK_EQUAL(strategy.m_rejectPendingInterestHistory.size(), 1);
   BOOST_CHECK_EQUAL(strategy.m_sendInterestHistory.size(), 0);
 }
 
diff --git a/tests/fw/strategy-tester.hpp b/tests/fw/strategy-tester.hpp
index 785fd18..0ec4770 100644
--- a/tests/fw/strategy-tester.hpp
+++ b/tests/fw/strategy-tester.hpp
@@ -32,14 +32,14 @@
   sendInterest(shared_ptr<pit::Entry> pitEntry,shared_ptr<Face> outFace);
 
   virtual void
-  rebuffPendingInterest(shared_ptr<pit::Entry> pitEntry);
+  rejectPendingInterest(shared_ptr<pit::Entry> pitEntry);
 
 public:
   typedef boost::tuple<shared_ptr<pit::Entry>, shared_ptr<Face> > SendInterestArgs;
   std::vector<SendInterestArgs> m_sendInterestHistory;
 
-  typedef boost::tuple<shared_ptr<pit::Entry> > RebuffPendingInterestArgs;
-  std::vector<RebuffPendingInterestArgs> m_rebuffPendingInterestHistory;
+  typedef boost::tuple<shared_ptr<pit::Entry> > RejectPendingInterestArgs;
+  std::vector<RejectPendingInterestArgs> m_rejectPendingInterestHistory;
 };
 
 
@@ -53,9 +53,9 @@
 
 template<typename S>
 inline void
-StrategyTester<S>::rebuffPendingInterest(shared_ptr<pit::Entry> pitEntry)
+StrategyTester<S>::rejectPendingInterest(shared_ptr<pit::Entry> pitEntry)
 {
-  m_rebuffPendingInterestHistory.push_back(RebuffPendingInterestArgs(pitEntry));
+  m_rejectPendingInterestHistory.push_back(RejectPendingInterestArgs(pitEntry));
 }
 
 
