diff --git a/tests/unit-tests/mgmt/nfd/strategy-choice.t.cpp b/tests/unit-tests/mgmt/nfd/strategy-choice.t.cpp
index b02be0c..a623858 100644
--- a/tests/unit-tests/mgmt/nfd/strategy-choice.t.cpp
+++ b/tests/unit-tests/mgmt/nfd/strategy-choice.t.cpp
@@ -37,14 +37,12 @@
   StrategyChoice sc1;
   sc1.setName("/hello/world")
      .setStrategy("/some/non/existing/strategy/name");
-
-  Block wire;
-  BOOST_REQUIRE_NO_THROW(wire = sc1.wireEncode());
+  Block wire = sc1.wireEncode();
 
   // These octets are obtained by the snippet below.
   // This check is intended to detect unexpected encoding change in the future.
   // for (Buffer::const_iterator it = wire.begin(); it != wire.end(); ++it) {
-  //  printf("0x%02x, ", *it);
+  //   printf("0x%02x, ", *it);
   // }
   static const uint8_t expected[] = {
     0x80, 0x39, 0x07, 0x0e, 0x08, 0x05, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x08, 0x05, 0x77,
@@ -53,10 +51,9 @@
     0x67, 0x08, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x08, 0x04, 0x6e,
     0x61, 0x6d, 0x65
   };
-  BOOST_REQUIRE_EQUAL_COLLECTIONS(expected, expected + sizeof(expected),
-                                  wire.begin(), wire.end());
+  BOOST_CHECK_EQUAL_COLLECTIONS(expected, expected + sizeof(expected),
+                                wire.begin(), wire.end());
 
-  BOOST_REQUIRE_NO_THROW(StrategyChoice(wire));
   StrategyChoice sc2(wire);
   BOOST_CHECK_EQUAL(sc1, sc2);
 }
@@ -81,6 +78,9 @@
 BOOST_AUTO_TEST_CASE(Print)
 {
   StrategyChoice sc;
+  BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(sc),
+                    "StrategyChoice(Name: /, Strategy: /)");
+
   sc.setName("/A")
     .setStrategy("/strategyP");
   BOOST_CHECK_EQUAL(boost::lexical_cast<std::string>(sc),
