Browse Source

[2108] Test that adding an RRset to a non-existent zone throws

Mukund Sivaraman 12 years ago
parent
commit
f8b817744f
1 changed files with 9 additions and 0 deletions
  1. 9 0
      src/lib/datasrc/memory/tests/memory_client_unittest.cc

+ 9 - 0
src/lib/datasrc/memory/tests/memory_client_unittest.cc

@@ -109,6 +109,15 @@ TEST_F(MemoryClientTest, getIteratorGetSOAThrowsNotImplemented) {
     EXPECT_THROW(iterator->getSOA(), isc::NotImplemented);
 }
 
+TEST_F(MemoryClientTest, addRRsetToNonExistentZoneThrows) {
+    // The zone "example.org" doesn't exist, so we can't add an RRset to
+    // it.
+    RRsetPtr rrset_a(new RRset(Name("example.org"), RRClass::IN(), RRType::A(),
+                               RRTTL(300)));
+    rrset_a->addRdata(rdata::in::A("192.0.2.1"));
+    EXPECT_THROW(client_->add(Name("example.org"), rrset_a), DataSourceError);
+}
+
 TEST_F(MemoryClientTest, getUpdaterThrowsNotImplemented) {
     // This method is not implemented.
     EXPECT_THROW(client_->getUpdater(Name("."), false, false),