MCLinker upstream commit 9628cfb76b5a.

Change-Id: I6d12c63bdae94299558dc1cf42b489bb98748851
diff --git a/unittests/PathTest.cpp b/unittests/PathTest.cpp
index 8906d02..2a4de80 100644
--- a/unittests/PathTest.cpp
+++ b/unittests/PathTest.cpp
@@ -138,3 +138,20 @@
   EXPECT_STREQ("/usr/lib/", m_pTestee->generic_string().c_str());
 }
 
+TEST_F( PathTest, parent_path ) {
+  m_pTestee->assign("aa/bb/cc/dd");
+  EXPECT_STREQ("aa/bb/cc", m_pTestee->parent_path().c_str());
+  delete m_pTestee;
+  m_pTestee = new Path("/aa/bb/");
+  EXPECT_STREQ("/aa/bb", m_pTestee->parent_path().c_str());
+  delete m_pTestee;
+  m_pTestee = new Path("/aa/bb");
+  EXPECT_STREQ("/aa", m_pTestee->parent_path().c_str());
+  delete m_pTestee;
+  m_pTestee = new Path("aa/");
+  EXPECT_STREQ("aa", m_pTestee->parent_path().c_str());
+  delete m_pTestee;
+  m_pTestee = new Path("aa");
+  EXPECT_TRUE(m_pTestee->parent_path().empty());
+}
+