interest: update toUri() for packet format v0.3

Refs: #4709
Change-Id: Id8c6fee0e8d2ad4e9d267854cdf0f41bb46f453a
diff --git a/tests/unit/interest.t.cpp b/tests/unit/interest.t.cpp
index ebbff4a..e253ff5 100644
--- a/tests/unit/interest.t.cpp
+++ b/tests/unit/interest.t.cpp
@@ -748,6 +748,39 @@
   BOOST_CHECK_EQUAL(i.isParametersDigestValid(), true);
 }
 
+BOOST_AUTO_TEST_CASE(ToUri)
+{
+  Interest i;
+  i.setCanBePrefix(false);
+  BOOST_CHECK_EQUAL(i.toUri(), "/");
+
+  i.setName("/foo");
+  BOOST_CHECK_EQUAL(i.toUri(), "/foo");
+
+  i.setCanBePrefix(true);
+  BOOST_CHECK_EQUAL(i.toUri(), "/foo?CanBePrefix");
+
+  i.setMustBeFresh(true);
+  BOOST_CHECK_EQUAL(i.toUri(), "/foo?CanBePrefix&MustBeFresh");
+
+  i.setNonce(1234);
+  BOOST_CHECK_EQUAL(i.toUri(), "/foo?CanBePrefix&MustBeFresh&Nonce=1234");
+
+  i.setInterestLifetime(2_s);
+  BOOST_CHECK_EQUAL(i.toUri(), "/foo?CanBePrefix&MustBeFresh&Nonce=1234&Lifetime=2000");
+
+  i.setHopLimit(18);
+  BOOST_CHECK_EQUAL(i.toUri(), "/foo?CanBePrefix&MustBeFresh&Nonce=1234&Lifetime=2000&HopLimit=18");
+
+  i.setCanBePrefix(false);
+  i.setMustBeFresh(false);
+  i.setHopLimit(nullopt);
+  i.setApplicationParameters("2402CAFE"_block);
+  BOOST_CHECK_EQUAL(i.toUri(),
+                    "/foo/params-sha256=8621f5e8321f04104640c8d02877d7c5142cad6e203c5effda1783b1a0e476d6"
+                    "?Nonce=1234&Lifetime=2000");
+}
+
 BOOST_AUTO_TEST_SUITE_END() // TestInterest
 
 } // namespace tests