From: Mukund Sivaraman Date: Sun, 16 Sep 2012 19:42:32 +0000 (+0530) Subject: [2150] Find a relative label sequence that's more than 1 node away from chain.top() X-Git-Tag: trac2351_base~73 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4e25ff76b698c04d2aa9f0e2ed391a3b6922b8f7;p=thirdparty%2Fkea.git [2150] Find a relative label sequence that's more than 1 node away from chain.top() --- diff --git a/src/lib/datasrc/memory/tests/domaintree_unittest.cc b/src/lib/datasrc/memory/tests/domaintree_unittest.cc index fa3665e87b..58a3f4d4df 100644 --- a/src/lib/datasrc/memory/tests/domaintree_unittest.cc +++ b/src/lib/datasrc/memory/tests/domaintree_unittest.cc @@ -496,6 +496,28 @@ TEST_F(DomainTreeTest, findInSubTree) { testCallback, &flag); EXPECT_EQ(DomainTree::EXACTMATCH, result); EXPECT_EQ(n2, chain.getAbsoluteName()); + + // Another test. Start with "d.e.f." node. + chain.clear(); + const Name n3("d.e.f"); + const LabelSequence ls3(n3); + result = + dtree_expose_empty_node.find(ls3, &cdtnode, chain, + testCallback, &flag); + EXPECT_EQ(DomainTree::EXACTMATCH, result); + EXPECT_EQ(n3, chain.getAbsoluteName()); + + // Now, find "o.w.y.d.e.f." by right-stripping the "w.y.d.e.f." + // suffix to "o.w.y" (non-absolute). + const Name n4("o.w.y.d.e.f"); + LabelSequence ls4(n2); + ls4.stripRight(4); + EXPECT_EQ("o.w.y", ls4.toText()); + + result = dtree_expose_empty_node.find(ls4, &cdtnode, chain, + testCallback, &flag); + EXPECT_EQ(DomainTree::EXACTMATCH, result); + EXPECT_EQ(n4, chain.getAbsoluteName()); } TEST_F(DomainTreeTest, chainLevel) {