Browse Source

[2420] unify destroying zone data and leak check in the test dtor

JINMEI Tatuya 12 years ago
parent
commit
41b26fc471
1 changed files with 5 additions and 8 deletions
  1. 5 8
      src/lib/datasrc/tests/memory/zone_data_updater_unittest.cc

+ 5 - 8
src/lib/datasrc/tests/memory/zone_data_updater_unittest.cc

@@ -45,12 +45,16 @@ protected:
         zone_data_(ZoneData::create(mem_sgmt_, zname_)),
         updater_(new ZoneDataUpdater(mem_sgmt_, zclass_, zname_, *zone_data_))
     {}
+
     ~ZoneDataUpdaterTest() {
-        // Make sure zone data is destroyed even if a test results in exception
         if (zone_data_ != NULL) {
             ZoneData::destroy(mem_sgmt_, zone_data_, zclass_);
         }
+        if (!mem_sgmt_.allMemoryDeallocated()) {
+            ADD_FAILURE() << "Memory leak detected";
+        }
     }
+
     void clearZoneData() {
         assert(zone_data_ != NULL);
         ZoneData::destroy(mem_sgmt_, zone_data_, zclass_);
@@ -59,13 +63,6 @@ protected:
                                            *zone_data_));
     }
 
-    void TearDown() {
-        if (zone_data_ != NULL) {
-            ZoneData::destroy(mem_sgmt_, zone_data_, zclass_);
-            zone_data_ = NULL;
-        }
-        EXPECT_TRUE(mem_sgmt_.allMemoryDeallocated()); // catch any leak here.
-    }
     const Name zname_;
     const RRClass zclass_;
     test::MemorySegmentTest mem_sgmt_;