[svn] commit: r1122 - in /trunk/src/lib/auth: datasrc_unittest.cc unittest_ds.cc
BIND 10 source code commits
bind10-changes at lists.isc.org
Fri Mar 5 04:59:13 UTC 2010
Author: jinmei
Date: Fri Mar 5 04:59:13 2010
New Revision: 1122
Log:
simplified test code (no logic change)
Modified:
trunk/src/lib/auth/datasrc_unittest.cc
trunk/src/lib/auth/unittest_ds.cc
Modified: trunk/src/lib/auth/datasrc_unittest.cc
==============================================================================
--- trunk/src/lib/auth/datasrc_unittest.cc (original)
+++ trunk/src/lib/auth/datasrc_unittest.cc Fri Mar 5 04:59:13 2010
@@ -41,46 +41,54 @@
using namespace isc::auth;
namespace {
+TestDataSrc ds;
+
class DataSrcTest : public ::testing::Test {
protected:
DataSrcTest() : obuffer(0), renderer(obuffer), msg(Message::PARSE)
{}
- TestDataSrc ds;
OutputBuffer obuffer;
MessageRenderer renderer;
Message msg;
- static void msgFromFile(Message& message, const char* datafile);
};
void
-DataSrcTest::msgFromFile(Message& message, const char* datafile)
-{
+readAndProcessQuery(Message& message, const char* datafile) {
std::vector<unsigned char> data;
UnitTestUtil::readWireData(datafile, data);
InputBuffer buffer(&data[0], data.size());
message.fromWire(buffer);
+
+ message.makeResponse();
+ message.setHeaderFlag(MessageFlag::AA());
+ message.setRcode(Rcode::NOERROR());
+ Query q(message, true);
+ ds.doQuery(q);
+}
+
+void
+headerCheck(const Message& message, const Rcode& rcode, const bool qrflag,
+ const bool aaflag, const bool rdflag, const unsigned int ancount,
+ const unsigned int nscount, const unsigned int arcount)
+{
+ EXPECT_EQ(rcode, message.getRcode());
+ EXPECT_EQ(qrflag, message.getHeaderFlag(MessageFlag::QR()));
+ EXPECT_EQ(aaflag, message.getHeaderFlag(MessageFlag::AA()));
+ EXPECT_EQ(rdflag, message.getHeaderFlag(MessageFlag::RD()));
+
+ EXPECT_EQ(ancount, message.getRRCount(Section::ANSWER()));
+ EXPECT_EQ(nscount, message.getRRCount(Section::AUTHORITY()));
+ EXPECT_EQ(arcount, message.getRRCount(Section::ADDITIONAL()));
+
}
TEST_F(DataSrcTest, Query) {
- msgFromFile(msg, "testdata/q_www");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(2, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_www");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 2, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("www.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -94,23 +102,23 @@
// XXX: also check ANSWER RRSIG
- rit = m->beginSection(Section::AUTHORITY());
- rrset = *rit;
- EXPECT_EQ(Name("example.com"), rrset->getName());
- EXPECT_EQ(RRType::NS(), rrset->getType());
- EXPECT_EQ(RRClass::IN(), rrset->getClass());
-
- it = rrset->getRdataIterator();
- it->first();
- EXPECT_EQ("dns01.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_EQ("dns02.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_EQ("dns03.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_TRUE(it->isLast());
-
- rit = m->beginSection(Section::ADDITIONAL());
+ rit = msg.beginSection(Section::AUTHORITY());
+ rrset = *rit;
+ EXPECT_EQ(Name("example.com"), rrset->getName());
+ EXPECT_EQ(RRType::NS(), rrset->getType());
+ EXPECT_EQ(RRClass::IN(), rrset->getClass());
+
+ it = rrset->getRdataIterator();
+ it->first();
+ EXPECT_EQ("dns01.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_EQ("dns02.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_EQ("dns03.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_TRUE(it->isLast());
+
+ rit = msg.beginSection(Section::ADDITIONAL());
rrset = *rit;
EXPECT_EQ(Name("dns01.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -124,24 +132,11 @@
}
TEST_F(DataSrcTest, NSQuery) {
- msgFromFile(msg, "testdata/q_example_ns");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(4, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(0, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_example_ns");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 4, 0, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("example.com"), rrset->getName());
EXPECT_EQ(RRType::NS(), rrset->getType());
@@ -159,48 +154,22 @@
}
TEST_F(DataSrcTest, NxRRset) {
- msgFromFile(msg, "testdata/q_example_ptr");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(0, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(0, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::AUTHORITY());
+ readAndProcessQuery(msg, "testdata/q_example_ptr");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 0, 4, 0);
+
+ RRsetIterator rit = msg.beginSection(Section::AUTHORITY());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("example.com"), rrset->getName());
EXPECT_EQ(RRType::SOA(), rrset->getType());
}
TEST_F(DataSrcTest, Nxdomain) {
- msgFromFile(msg, "testdata/q_glork");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NXDOMAIN(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(0, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(6, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(0, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::AUTHORITY());
+ readAndProcessQuery(msg, "testdata/q_glork");
+
+ headerCheck(msg, Rcode::NXDOMAIN(), true, true, true, 0, 6, 0);
+
+ RRsetIterator rit = msg.beginSection(Section::AUTHORITY());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("example.com"), rrset->getName());
EXPECT_EQ(RRType::NSEC(), rrset->getType());
@@ -209,40 +178,23 @@
}
TEST_F(DataSrcTest, NxZone) {
- msgFromFile(msg, "testdata/q_spork");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::REFUSED(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_FALSE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
+ readAndProcessQuery(msg, "testdata/q_spork");
+
+ headerCheck(msg, Rcode::REFUSED(), true, false, true, 0, 0, 0);
+
+ EXPECT_EQ(Rcode::REFUSED(), msg.getRcode());
+ EXPECT_TRUE(msg.getHeaderFlag(MessageFlag::QR()));
+ EXPECT_FALSE(msg.getHeaderFlag(MessageFlag::AA()));
+ EXPECT_TRUE(msg.getHeaderFlag(MessageFlag::RD()));
}
TEST_F(DataSrcTest, Wildcard) {
- msgFromFile(msg, "testdata/q_wild");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(2, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_wild");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 2, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("www.wild.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -254,23 +206,23 @@
it->next();
EXPECT_TRUE(it->isLast());
- rit = m->beginSection(Section::AUTHORITY());
- rrset = *rit;
- EXPECT_EQ(Name("example.com"), rrset->getName());
- EXPECT_EQ(RRType::NS(), rrset->getType());
- EXPECT_EQ(RRClass::IN(), rrset->getClass());
-
- it = rrset->getRdataIterator();
- it->first();
- EXPECT_EQ("dns01.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_EQ("dns02.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_EQ("dns03.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_TRUE(it->isLast());
-
- rit = m->beginSection(Section::ADDITIONAL());
+ rit = msg.beginSection(Section::AUTHORITY());
+ rrset = *rit;
+ EXPECT_EQ(Name("example.com"), rrset->getName());
+ EXPECT_EQ(RRType::NS(), rrset->getType());
+ EXPECT_EQ(RRClass::IN(), rrset->getClass());
+
+ it = rrset->getRdataIterator();
+ it->first();
+ EXPECT_EQ("dns01.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_EQ("dns02.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_EQ("dns03.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_TRUE(it->isLast());
+
+ rit = msg.beginSection(Section::ADDITIONAL());
rrset = *rit;
EXPECT_EQ(Name("dns01.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -284,24 +236,11 @@
}
TEST_F(DataSrcTest, AuthDelegation) {
- msgFromFile(msg, "testdata/q_sql1");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(2, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_sql1");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 2, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("www.sql1.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -313,7 +252,7 @@
it->next();
EXPECT_TRUE(it->isLast());
- rit = m->beginSection(Section::AUTHORITY());
+ rit = msg.beginSection(Section::AUTHORITY());
rrset = *rit;
EXPECT_EQ(Name("sql1.example.com"), rrset->getName());
EXPECT_EQ(RRType::NS(), rrset->getType());
@@ -329,7 +268,7 @@
it->next();
EXPECT_TRUE(it->isLast());
- rit = m->beginSection(Section::ADDITIONAL());
+ rit = msg.beginSection(Section::ADDITIONAL());
rrset = *rit;
EXPECT_EQ(Name("dns01.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -343,24 +282,11 @@
}
TEST_F(DataSrcTest, Dname) {
- msgFromFile(msg, "testdata/q_dname");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(5, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_dname");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 5, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("dname.example.com"), rrset->getName());
EXPECT_EQ(RRType::DNAME(), rrset->getType());
@@ -374,7 +300,7 @@
// XXX: check CNAME and A record too
- rit = m->beginSection(Section::AUTHORITY());
+ rit = msg.beginSection(Section::AUTHORITY());
rrset = *rit;
EXPECT_EQ(Name("sql1.example.com"), rrset->getName());
EXPECT_EQ(RRType::NS(), rrset->getType());
@@ -390,7 +316,7 @@
it->next();
EXPECT_TRUE(it->isLast());
- rit = m->beginSection(Section::ADDITIONAL());
+ rit = msg.beginSection(Section::ADDITIONAL());
rrset = *rit;
EXPECT_EQ(Name("dns01.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -404,24 +330,11 @@
}
TEST_F(DataSrcTest, Cname) {
- msgFromFile(msg, "testdata/q_cname");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(2, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(0, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(0, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_cname");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 2, 0, 0);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("foo.example.com"), rrset->getName());
EXPECT_EQ(RRType::CNAME(), rrset->getType());
@@ -435,24 +348,11 @@
}
TEST_F(DataSrcTest, CnameInt) {
- msgFromFile(msg, "testdata/q_cname_int");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(4, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_cname_int");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 4, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("cname-int.example.com"), rrset->getName());
EXPECT_EQ(RRType::CNAME(), rrset->getType());
@@ -466,7 +366,7 @@
// XXX: check a record as well
- rit = m->beginSection(Section::AUTHORITY());
+ rit = msg.beginSection(Section::AUTHORITY());
rrset = *rit;
EXPECT_EQ(Name("example.com"), rrset->getName());
EXPECT_EQ(RRType::NS(), rrset->getType());
@@ -474,24 +374,11 @@
}
TEST_F(DataSrcTest, CnameExt) {
- msgFromFile(msg, "testdata/q_cname_ext");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(4, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_cname_ext");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 4, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("cname-ext.example.com"), rrset->getName());
EXPECT_EQ(RRType::CNAME(), rrset->getType());
@@ -503,7 +390,7 @@
it->next();
EXPECT_TRUE(it->isLast());
- rit = m->beginSection(Section::AUTHORITY());
+ rit = msg.beginSection(Section::AUTHORITY());
rrset = *rit;
EXPECT_EQ(Name("sql1.example.com"), rrset->getName());
EXPECT_EQ(RRType::NS(), rrset->getType());
@@ -511,24 +398,11 @@
}
TEST_F(DataSrcTest, Delegation) {
- msgFromFile(msg, "testdata/q_subzone");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_FALSE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(0, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(5, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(2, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::AUTHORITY());
+ readAndProcessQuery(msg, "testdata/q_subzone");
+
+ headerCheck(msg, Rcode::NOERROR(), true, false, true, 0, 5, 2);
+
+ RRsetIterator rit = msg.beginSection(Section::AUTHORITY());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("subzone.example.com."), rrset->getName());
EXPECT_EQ(RRType::NS(), rrset->getType());
@@ -540,7 +414,7 @@
it->next();
EXPECT_FALSE(it->isLast());
- rit = m->beginSection(Section::ADDITIONAL());
+ rit = msg.beginSection(Section::ADDITIONAL());
rrset = *rit;
EXPECT_EQ(Name("ns1.subzone.example.com"), rrset->getName());
EXPECT_EQ(RRType::A(), rrset->getType());
@@ -554,45 +428,32 @@
}
TEST_F(DataSrcTest, DS) {
- msgFromFile(msg, "testdata/q_subzone_ds");
- msg.makeResponse();
- msg.setHeaderFlag(MessageFlag::AA());
- msg.setRcode(Rcode::NOERROR());
- Query q(msg, true);
- ds.doQuery(q);
- Message* m = &(q.message());
-
- EXPECT_EQ(Rcode::NOERROR(), m->getRcode());
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::QR()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::AA()));
- EXPECT_TRUE(m->getHeaderFlag(MessageFlag::RD()));
-
- EXPECT_EQ(3, m->getRRCount(Section::ANSWER()));
- EXPECT_EQ(4, m->getRRCount(Section::AUTHORITY()));
- EXPECT_EQ(6, m->getRRCount(Section::ADDITIONAL()));
-
- RRsetIterator rit = m->beginSection(Section::ANSWER());
+ readAndProcessQuery(msg, "testdata/q_subzone_ds");
+
+ headerCheck(msg, Rcode::NOERROR(), true, true, true, 3, 4, 6);
+
+ RRsetIterator rit = msg.beginSection(Section::ANSWER());
RRsetPtr rrset = *rit;
EXPECT_EQ(Name("subzone.example.com."), rrset->getName());
EXPECT_EQ(RRType::DS(), rrset->getType());
EXPECT_EQ(RRClass::IN(), rrset->getClass());
- rit = m->beginSection(Section::AUTHORITY());
- rrset = *rit;
- EXPECT_EQ(Name("example.com"), rrset->getName());
- EXPECT_EQ(RRType::NS(), rrset->getType());
- EXPECT_EQ(RRClass::IN(), rrset->getClass());
-
- RdataIteratorPtr it = rrset->getRdataIterator();
- it->first();
- EXPECT_EQ("dns01.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_EQ("dns02.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_EQ("dns03.example.com.", it->getCurrent().toText());
- it->next();
- EXPECT_TRUE(it->isLast());
-}
-
-}
-
+ rit = msg.beginSection(Section::AUTHORITY());
+ rrset = *rit;
+ EXPECT_EQ(Name("example.com"), rrset->getName());
+ EXPECT_EQ(RRType::NS(), rrset->getType());
+ EXPECT_EQ(RRClass::IN(), rrset->getClass());
+
+ RdataIteratorPtr it = rrset->getRdataIterator();
+ it->first();
+ EXPECT_EQ("dns01.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_EQ("dns02.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_EQ("dns03.example.com.", it->getCurrent().toText());
+ it->next();
+ EXPECT_TRUE(it->isLast());
+}
+
+}
+
Modified: trunk/src/lib/auth/unittest_ds.cc
==============================================================================
--- trunk/src/lib/auth/unittest_ds.cc (original)
+++ trunk/src/lib/auth/unittest_ds.cc Fri Mar 5 04:59:13 2010
@@ -393,7 +393,7 @@
RRsetList& target, const Name* zonename, const Mode mode,
uint32_t& flags) const
{
- bool any = (rdtype == RRType::ANY());
+ const bool any = (rdtype == RRType::ANY());
flags = 0;
assert(zonename != NULL);
More information about the bind10-changes
mailing list