Esempio n. 1
0
 def testPersistence(self):
     temp_dir = getTempDirectory()
     directory = join(temp_dir, 'read_write')
     db_file = join(directory, 'db')
     mkdir(directory)
     try:
         db = MasterDB(db_file)
         self.assertTrue(exists(db_file), db_file)
         address = ('example.com', 1024)
         db.addremove(None, address)
         address2 = ('example.org', 1024)
         db.addremove(None, address2)
         # Values are visible to a new db instance
         db2 = MasterDB(db_file)
         self.assertIn(address, db2)
         self.assertIn(address2, db2)
         db.addremove(address, None)
         # Create yet another instance (file is not supposed to be shared)
         db2 = MasterDB(db_file)
         self.assertNotIn(address, db2)
         self.assertIn(address2, db2)
         db.remove(address2)
         # and again, to test remove()
         self.assertNotIn(address2, MasterDB(db_file))
     finally:
         shutil.rmtree(directory)