From: Mukund Sivaraman Date: Mon, 3 Feb 2014 09:09:58 +0000 (+0530) Subject: Merge branch 'trac1397' X-Git-Tag: bind10-1.2.0beta1-release~81 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cc0fc600dfdc1f4652aa7ec5a7472db06c1cbd4d;p=thirdparty%2Fkea.git Merge branch 'trac1397' Conflicts: src/lib/dns/tests/rrset_unittest.cc The merge conflict resolution was reviewed by Shane on Jabber. --- cc0fc600dfdc1f4652aa7ec5a7472db06c1cbd4d diff --cc src/lib/dns/tests/rrset_unittest.cc index 6e7e788841,6e85380a6f..a91f97903b --- a/src/lib/dns/tests/rrset_unittest.cc +++ b/src/lib/dns/tests/rrset_unittest.cc @@@ -157,24 -157,27 +157,36 @@@ TEST_F(RRsetTest, addRdataPtr) rrset_a_empty.addRdata(createRdata(rrset_a_empty.getType(), rrset_a_empty.getClass(), "192.0.2.2")); - addRdataTestCommon(rrset_a); + addRdataTestCommon(rrset_a_empty); +} +TEST_F(RRsetTest, addRdataPtrMismatched) { // Pointer version of addRdata() doesn't type check and does allow to //add a different type of Rdata as a result. + + // Type mismatch rrset_a_empty.addRdata(createRdata(RRType::NS(), RRClass::IN(), "ns.example.com.")); - EXPECT_EQ(3, rrset_a_empty.getRdataCount()); + EXPECT_EQ(1, rrset_a_empty.getRdataCount()); + + // Class mismatch + rrset_ch_txt.addRdata(createRdata(RRType::TXT(), RRClass::IN(), + "Test String")); + EXPECT_EQ(1, rrset_ch_txt.getRdataCount()); } + TEST_F(RRsetTest, addRdataString) { + rrset_a_empty.addRdata("192.0.2.1"); + rrset_a_empty.addRdata("192.0.2.2"); + + addRdataTestCommon(rrset_a_empty); + + // String version of addRdata() will throw for bad RDATA for + // RRType::A(). + EXPECT_THROW(rrset_a_empty.addRdata("ns.example.com."), InvalidRdataText); + addRdataTestCommon(rrset_a_empty); + } + TEST_F(RRsetTest, iterator) { // Iterator for an empty RRset. RdataIteratorPtr it = rrset_a_empty.getRdataIterator();