[svn] commit: r4149 - /branches/trac458/src/bin/auth/tests/query_unittest.cc
BIND 10 source code commits
bind10-changes at lists.isc.org
Tue Jan 4 10:36:52 UTC 2011
Author: vorner
Date: Tue Jan 4 10:36:25 2011
New Revision: 4149
Log:
Test for MX after alias
Modified:
branches/trac458/src/bin/auth/tests/query_unittest.cc
Modified: branches/trac458/src/bin/auth/tests/query_unittest.cc
==============================================================================
--- branches/trac458/src/bin/auth/tests/query_unittest.cc (original)
+++ branches/trac458/src/bin/auth/tests/query_unittest.cc Tue Jan 4 10:36:25 2011
@@ -67,6 +67,8 @@
cname_rrset(RRsetPtr(new RRset(Name("cname.example.com"),
RRClass::IN(), RRType::CNAME(),
RRTTL(3600)))),
+ mx_cname_rrset_(new RRset(Name("cnamemailer.example.com"),
+ RRClass::IN(), RRType::CNAME(), RRTTL(3600))),
mx_rrset_(new RRset(Name("mx.example.com"), RRClass::IN(),
RRType::MX(), RRTTL(3600)))
{
@@ -86,6 +88,8 @@
Name("mailer.example.org")));
mx_rrset_->addRdata(isc::dns::rdata::generic::MX(30,
Name("mx.delegation.example.com")));
+ mx_cname_rrset_->addRdata(rdata::generic::CNAME(
+ Name("mx.example.com")));
}
virtual const isc::dns::Name& getOrigin() const;
virtual const isc::dns::RRClass& getClass() const;
@@ -99,6 +103,7 @@
bool has_SOA_;
RRsetPtr delegation_rrset;
RRsetPtr cname_rrset;
+ RRsetPtr mx_cname_rrset_;
RRsetPtr mx_rrset_;
};
@@ -150,6 +155,8 @@
return (FindResult(NXRRSET, RRsetPtr()));
} else if ((name == Name("cname.example.com"))) {
return (FindResult(CNAME, cname_rrset));
+ } else if ((name == Name("cnamemailer.example.com"))) {
+ return (FindResult(CNAME, mx_cname_rrset_));
} else if (name == Name("mx.example.com")) {
return (FindResult(SUCCESS, mx_rrset_));
} else {
@@ -304,4 +311,21 @@
EXPECT_EQ(1, additional_count);
}
-}
+/*
+ * Test when we ask for MX and encounter an alias (CNAME in this case).
+ *
+ * This should not trigger the additional processing.
+ */
+TEST_F(QueryTest, MXAlias) {
+ memory_datasrc.addZone(ZonePtr(new MockZone()));
+ Name qname("cnamemailer.example.com");
+ Query mx_query(memory_datasrc, qname, RRType::MX(), response);
+ EXPECT_NO_THROW(mx_query.process());
+ EXPECT_EQ(Rcode::NOERROR(), response.getRcode());
+ // We should not have the IP address in additional section
+ // Currently, the section should be completely empty
+ EXPECT_TRUE(response.beginSection(Message::SECTION_ADDITIONAL) ==
+ response.endSection(Message::SECTION_ADDITIONAL));
+}
+
+}
More information about the bind10-changes
mailing list