|
@@ -181,92 +181,91 @@ TEST_F(SQLite3Access, getRecords) {
|
|
const size_t column_count = DatabaseAccessor::COLUMN_COUNT;
|
|
const size_t column_count = DatabaseAccessor::COLUMN_COUNT;
|
|
std::string columns[column_count];
|
|
std::string columns[column_count];
|
|
|
|
|
|
|
|
+ // TODO: can't do this anymore
|
|
// without search, getNext() should return false
|
|
// without search, getNext() should return false
|
|
- EXPECT_FALSE(db->getNextRecord(columns, column_count));
|
|
|
|
- checkRecordRow(columns, "", "", "", "", "");
|
|
|
|
|
|
+ //EXPECT_FALSE(context->getNext(columns, column_count));
|
|
|
|
+ //checkRecordRow(columns, "", "", "", "", "");
|
|
|
|
|
|
- db->searchForRecords(zone_id, "foo.bar.");
|
|
|
|
- EXPECT_FALSE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ DatabaseAccessor::IteratorContextPtr
|
|
|
|
+ context(db->getRecords(Name("foo.bar"), 1));
|
|
|
|
+ ASSERT_NE(DatabaseAccessor::IteratorContextPtr(),
|
|
|
|
+ context);
|
|
|
|
+ EXPECT_FALSE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "", "", "", "", "");
|
|
checkRecordRow(columns, "", "", "", "", "");
|
|
|
|
|
|
- db->searchForRecords(zone_id, "");
|
|
|
|
- EXPECT_FALSE(db->getNextRecord(columns, column_count));
|
|
|
|
- checkRecordRow(columns, "", "", "", "", "");
|
|
|
|
|
|
+ // TODO can't pass incomplete name anymore
|
|
|
|
+ //context = db->getRecords(Name(""), zone_id);
|
|
|
|
+ //EXPECT_FALSE(context->getNext(columns, column_count));
|
|
|
|
+ //checkRecordRow(columns, "", "", "", "", "");
|
|
|
|
|
|
// Should error on a bad number of columns
|
|
// Should error on a bad number of columns
|
|
- EXPECT_THROW(db->getNextRecord(columns, 4), DataSourceError);
|
|
|
|
- EXPECT_THROW(db->getNextRecord(columns, 6), DataSourceError);
|
|
|
|
|
|
+ EXPECT_THROW(context->getNext(columns, 4), DataSourceError);
|
|
|
|
+ EXPECT_THROW(context->getNext(columns, 6), DataSourceError);
|
|
|
|
|
|
// now try some real searches
|
|
// now try some real searches
|
|
- db->searchForRecords(zone_id, "foo.example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ context = db->getRecords(Name("foo.example.com."), zone_id);
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "CNAME", "3600", "",
|
|
checkRecordRow(columns, "CNAME", "3600", "",
|
|
- "cnametest.example.org.", "foo.example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "cnametest.example.org.", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "3600", "CNAME",
|
|
checkRecordRow(columns, "RRSIG", "3600", "CNAME",
|
|
"CNAME 5 3 3600 20100322084538 20100220084538 33495 "
|
|
"CNAME 5 3 3600 20100322084538 20100220084538 33495 "
|
|
- "example.com. FAKEFAKEFAKEFAKE", "foo.example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "NSEC", "7200", "",
|
|
checkRecordRow(columns, "NSEC", "7200", "",
|
|
- "mail.example.com. CNAME RRSIG NSEC", "foo.example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "mail.example.com. CNAME RRSIG NSEC", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "7200", "NSEC",
|
|
checkRecordRow(columns, "RRSIG", "7200", "NSEC",
|
|
"NSEC 5 3 7200 20100322084538 20100220084538 33495 "
|
|
"NSEC 5 3 7200 20100322084538 20100220084538 33495 "
|
|
- "example.com. FAKEFAKEFAKEFAKE", "foo.example.com.");
|
|
|
|
- EXPECT_FALSE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ EXPECT_FALSE(context->getNext(columns, column_count));
|
|
// with no more records, the array should not have been modified
|
|
// with no more records, the array should not have been modified
|
|
checkRecordRow(columns, "RRSIG", "7200", "NSEC",
|
|
checkRecordRow(columns, "RRSIG", "7200", "NSEC",
|
|
"NSEC 5 3 7200 20100322084538 20100220084538 33495 "
|
|
"NSEC 5 3 7200 20100322084538 20100220084538 33495 "
|
|
- "example.com. FAKEFAKEFAKEFAKE", "foo.example.com.");
|
|
|
|
|
|
+ "example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
|
|
- db->searchForRecords(zone_id, "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ context = db->getRecords(Name("example.com."), zone_id);
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "SOA", "3600", "",
|
|
checkRecordRow(columns, "SOA", "3600", "",
|
|
"master.example.com. admin.example.com. "
|
|
"master.example.com. admin.example.com. "
|
|
- "1234 3600 1800 2419200 7200", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "1234 3600 1800 2419200 7200", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "3600", "SOA",
|
|
checkRecordRow(columns, "RRSIG", "3600", "SOA",
|
|
"SOA 5 2 3600 20100322084538 20100220084538 "
|
|
"SOA 5 2 3600 20100322084538 20100220084538 "
|
|
- "33495 example.com. FAKEFAKEFAKEFAKE", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
- checkRecordRow(columns, "NS", "1200", "", "dns01.example.com.",
|
|
|
|
- "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
- checkRecordRow(columns, "NS", "3600", "", "dns02.example.com.",
|
|
|
|
- "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
- checkRecordRow(columns, "NS", "1800", "", "dns03.example.com.",
|
|
|
|
- "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "33495 example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
|
|
+ checkRecordRow(columns, "NS", "1200", "", "dns01.example.com.", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
|
|
+ checkRecordRow(columns, "NS", "3600", "", "dns02.example.com.", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
|
|
+ checkRecordRow(columns, "NS", "1800", "", "dns03.example.com.", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "3600", "NS",
|
|
checkRecordRow(columns, "RRSIG", "3600", "NS",
|
|
"NS 5 2 3600 20100322084538 20100220084538 "
|
|
"NS 5 2 3600 20100322084538 20100220084538 "
|
|
- "33495 example.com. FAKEFAKEFAKEFAKE",
|
|
|
|
- "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
- checkRecordRow(columns, "MX", "3600", "", "10 mail.example.com.",
|
|
|
|
- "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "33495 example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
|
|
+ checkRecordRow(columns, "MX", "3600", "", "10 mail.example.com.", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "MX", "3600", "",
|
|
checkRecordRow(columns, "MX", "3600", "",
|
|
- "20 mail.subzone.example.com.", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "20 mail.subzone.example.com.", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "3600", "MX",
|
|
checkRecordRow(columns, "RRSIG", "3600", "MX",
|
|
"MX 5 2 3600 20100322084538 20100220084538 "
|
|
"MX 5 2 3600 20100322084538 20100220084538 "
|
|
- "33495 example.com. FAKEFAKEFAKEFAKE", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "33495 example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "NSEC", "7200", "",
|
|
checkRecordRow(columns, "NSEC", "7200", "",
|
|
- "cname-ext.example.com. NS SOA MX RRSIG NSEC DNSKEY",
|
|
|
|
- "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "cname-ext.example.com. NS SOA MX RRSIG NSEC DNSKEY", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "7200", "NSEC",
|
|
checkRecordRow(columns, "RRSIG", "7200", "NSEC",
|
|
"NSEC 5 2 7200 20100322084538 20100220084538 "
|
|
"NSEC 5 2 7200 20100322084538 20100220084538 "
|
|
- "33495 example.com. FAKEFAKEFAKEFAKE", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "33495 example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "DNSKEY", "3600", "",
|
|
checkRecordRow(columns, "DNSKEY", "3600", "",
|
|
"256 3 5 AwEAAcOUBllYc1hf7ND9uDy+Yz1BF3sI0m4q NGV7W"
|
|
"256 3 5 AwEAAcOUBllYc1hf7ND9uDy+Yz1BF3sI0m4q NGV7W"
|
|
"cTD0WEiuV7IjXgHE36fCmS9QsUxSSOV o1I/FMxI2PJVqTYHkX"
|
|
"cTD0WEiuV7IjXgHE36fCmS9QsUxSSOV o1I/FMxI2PJVqTYHkX"
|
|
"FBS7AzLGsQYMU7UjBZ SotBJ6Imt5pXMu+lEDNy8TOUzG3xm7g"
|
|
"FBS7AzLGsQYMU7UjBZ SotBJ6Imt5pXMu+lEDNy8TOUzG3xm7g"
|
|
- "0qcbW YF6qCEfvZoBtAqi5Rk7Mlrqs8agxYyMx", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "0qcbW YF6qCEfvZoBtAqi5Rk7Mlrqs8agxYyMx", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "DNSKEY", "3600", "",
|
|
checkRecordRow(columns, "DNSKEY", "3600", "",
|
|
"257 3 5 AwEAAe5WFbxdCPq2jZrZhlMj7oJdff3W7syJ tbvzg"
|
|
"257 3 5 AwEAAe5WFbxdCPq2jZrZhlMj7oJdff3W7syJ tbvzg"
|
|
"62tRx0gkoCDoBI9DPjlOQG0UAbj+xUV 4HQZJStJaZ+fHU5AwV"
|
|
"62tRx0gkoCDoBI9DPjlOQG0UAbj+xUV 4HQZJStJaZ+fHU5AwV"
|
|
@@ -275,20 +274,20 @@ TEST_F(SQLite3Access, getRecords) {
|
|
"qiODyNZYQ+ZrLmF0KIJ2yPN3iO6Zq 23TaOrVTjB7d1a/h31OD"
|
|
"qiODyNZYQ+ZrLmF0KIJ2yPN3iO6Zq 23TaOrVTjB7d1a/h31OD"
|
|
"fiHAxFHrkY3t3D5J R9Nsl/7fdRmSznwtcSDgLXBoFEYmw6p86"
|
|
"fiHAxFHrkY3t3D5J R9Nsl/7fdRmSznwtcSDgLXBoFEYmw6p86"
|
|
"Acv RyoYNcL1SXjaKVLG5jyU3UR+LcGZT5t/0xGf oIK/aKwEN"
|
|
"Acv RyoYNcL1SXjaKVLG5jyU3UR+LcGZT5t/0xGf oIK/aKwEN"
|
|
- "rsjcKZZj660b1M=", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "rsjcKZZj660b1M=", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "3600", "DNSKEY",
|
|
checkRecordRow(columns, "RRSIG", "3600", "DNSKEY",
|
|
"DNSKEY 5 2 3600 20100322084538 20100220084538 "
|
|
"DNSKEY 5 2 3600 20100322084538 20100220084538 "
|
|
- "4456 example.com. FAKEFAKEFAKEFAKE", "example.com.");
|
|
|
|
- ASSERT_TRUE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "4456 example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ ASSERT_TRUE(context->getNext(columns, column_count));
|
|
checkRecordRow(columns, "RRSIG", "3600", "DNSKEY",
|
|
checkRecordRow(columns, "RRSIG", "3600", "DNSKEY",
|
|
"DNSKEY 5 2 3600 20100322084538 20100220084538 "
|
|
"DNSKEY 5 2 3600 20100322084538 20100220084538 "
|
|
- "33495 example.com. FAKEFAKEFAKEFAKE", "example.com.");
|
|
|
|
- EXPECT_FALSE(db->getNextRecord(columns, column_count));
|
|
|
|
|
|
+ "33495 example.com. FAKEFAKEFAKEFAKE", "");
|
|
|
|
+ EXPECT_FALSE(context->getNext(columns, column_count));
|
|
// getnextrecord returning false should mean array is not altered
|
|
// getnextrecord returning false should mean array is not altered
|
|
checkRecordRow(columns, "RRSIG", "3600", "DNSKEY",
|
|
checkRecordRow(columns, "RRSIG", "3600", "DNSKEY",
|
|
"DNSKEY 5 2 3600 20100322084538 20100220084538 "
|
|
"DNSKEY 5 2 3600 20100322084538 20100220084538 "
|
|
- "33495 example.com. FAKEFAKEFAKEFAKE", "example.com.");
|
|
|
|
|
|
+ "33495 example.com. FAKEFAKEFAKEFAKE", "");
|
|
}
|
|
}
|
|
|
|
|
|
} // end anonymous namespace
|
|
} // end anonymous namespace
|