name: correct Marker in Name::appendVersion()

refs #2086

Change-Id: I84986ad1ee5dddd124175fe7f782ec6eb9cbaffa
diff --git a/src/name.cpp b/src/name.cpp
index ea0015b..ba06322 100644
--- a/src/name.cpp
+++ b/src/name.cpp
@@ -184,7 +184,7 @@
 Name&
 Name::appendVersion()
 {
-  appendNumber(time::toUnixTimestamp(time::system_clock::now()).count());
+  appendVersion(time::toUnixTimestamp(time::system_clock::now()).count());
   return *this;
 }
 
diff --git a/tests/unit-tests/test-name.cpp b/tests/unit-tests/test-name.cpp
index 9da9e2b..b95f69e 100644
--- a/tests/unit-tests/test-name.cpp
+++ b/tests/unit-tests/test-name.cpp
@@ -229,6 +229,31 @@
   BOOST_CHECK_EQUAL(Name().getSuccessor(), Name("ndn:/%00"));
 }
 
+BOOST_AUTO_TEST_CASE(Markers)
+{
+  Name name;
+  uint64_t number;
+
+  BOOST_REQUIRE_NO_THROW(number = name.appendSegment(30923).at(-1).toSegment());
+  BOOST_CHECK_EQUAL(number, 30923);
+
+  BOOST_REQUIRE_NO_THROW(number = name.appendSegmentOffset(589).at(-1).toSegmentOffset());
+  BOOST_CHECK_EQUAL(number, 589);
+
+  BOOST_REQUIRE_NO_THROW(number = name.appendVersion().at(-1).toVersion());
+
+  BOOST_REQUIRE_NO_THROW(number = name.appendVersion(25912).at(-1).toVersion());
+  BOOST_CHECK_EQUAL(number, 25912);
+
+  const time::system_clock::TimePoint tp = time::system_clock::now();
+  time::system_clock::TimePoint tp2;
+  BOOST_REQUIRE_NO_THROW(tp2 = name.appendTimestamp(tp).at(-1).toTimestamp());
+  BOOST_CHECK_LE(std::abs(time::duration_cast<time::microseconds>(tp2 - tp).count()), 1);
+
+  BOOST_REQUIRE_NO_THROW(number = name.appendSequenceNumber(11676).at(-1).toSequenceNumber());
+  BOOST_CHECK_EQUAL(number, 11676);
+}
+
 BOOST_AUTO_TEST_SUITE_END()
 
 } // namespace ndn