diff --git a/test/test-encode-decode-interest.cpp b/test/test-encode-decode-interest.cpp
index ead57cc..e8c82c5 100644
--- a/test/test-encode-decode-interest.cpp
+++ b/test/test-encode-decode-interest.cpp
@@ -14,7 +14,7 @@
 unsigned char Interest1[] = {
 0x01, 0xd2,
   0xf2, 0xfa, 0x9d, 0x6e, 0x64, 0x6e, 0x00, 0xfa, 0x9d, 0x61, 0x62, 0x63, 0x00, 0x00, 
-  0x05, 0x9a, 0x8e, 0x32, 0x00, 
+  0x05, 0x9a, 0x9e, 0x31, 0x32, 0x33, 0x00, 
   0x05, 0xa2, 0x8e, 0x34, 0x00,
   0x03, 0xe2, 
     0x02, 0x85, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 
@@ -41,15 +41,18 @@
     Interest interest;
     interest.decode(Interest1, sizeof(Interest1));
     cout << "Interest name " << interest.getName().to_uri() << endl;
+    cout << "Interest minSuffixComponents " << interest.getMinSuffixComponents() << endl;
     cout << "InterestLifetime " << interest.getInterestLifetime() << endl;
     
-#if 0
     vector<unsigned char> encoding;
     interest.encode(encoding);
-    unsigned char *encodingBuffer = &encoding[0];
-    unsigned int encodingLength = encoding.size();
-    cout << "Interest encoding length " << encodingLength << " vs. sizeof(Interest1) " << sizeof(Interest1) << endl;
-#endif
+    cout << "Interest encoding length " << encoding.size() << " vs. sizeof(Interest1) " << sizeof(Interest1) << endl;
+    
+    Interest reDecodedInterest;
+    reDecodedInterest.decode(encoding);
+    cout << "Re-decoded Interest name " << reDecodedInterest.getName().to_uri() << endl;
+    cout << "Re-decoded Interest minSuffixComponents " << reDecodedInterest.getMinSuffixComponents() << endl;
+    cout << "Re-decoded InterestLifetime " << reDecodedInterest.getInterestLifetime() << endl;
   } catch (exception &e) {
     cout << "exception: " << e.what() << endl;
   }
