class TestContactsManager(unittest.TestCase): """Test for L{vmc.common.persistent.ContactsManager} functionality""" def setUpClass(self): self.mana = ContactsManager(TMPFILE) def tearDownClass(self): self.mana.close() shutil.rmtree(TMPFILE) def test_add_contact(self): contact = Contact('Peter', '+3453453452') c1 = self.mana.add_contact(contact) self.assertEqual(contact, self.mana.get_contact_by_id(c1.get_index())) contact2 = Contact('John', '+45364563345') c2 = self.mana.add_contact(contact2) self.assertEqual(contact2, self.mana.get_contact_by_id(c2.get_index())) def test_find_contact(self): contact = Contact('Pepito', '+3453423423423') c1 = self.mana.add_contact(contact) resp = list(self.mana.find_contacts('Pe')) self.failUnlessIn(c1, resp) def test_delete_contact(self): contact = Contact(pack('Paul'), '+45364563345') c1 = self.mana.add_contact(contact) self.mana.delete_contact_by_id(c1.get_index()) self.assertRaises(KeyError, self.mana.get_contact_by_id, c1.get_index())