class HashSetTest(unittest.TestCase): def setUp(self): self.set = HashSet() def test_find(self): phone1 = Phone('017-0774-1234-5678', 'Maria') phone2 = Phone('112-4567-1122-9740', 'Sasha') phone3 = Phone('150-2570-7171-7575', 'Helen') self.set.add(phone1) self.set.add(phone2) self.set.add(phone3) self.assertTrue(self.set.find(phone1)) self.assertTrue(self.set.find(phone2)) self.assertTrue(self.set.find(phone3)) self.assertFalse(self.set.find(Phone('123', 'test'))) def test_remove(self): phone1 = Phone('017-0774-1234-5678', 'Maria') phone2 = Phone('112-4567-1122-9740', 'Sasha') phone3 = Phone('150-2570-7171-7575', 'Helen') self.set.add(phone1) self.set.add(phone2) self.set.add(phone3) self.assertEqual('Maria', self.set.remove(phone1).name) self.assertEqual('Sasha', self.set.remove(phone2).name) self.assertEqual('Helen', self.set.remove(phone3).name) self.assertIsNone(self.set.remove(Phone('123', 'test')))
def test_remove(self): hs = HashSet(["Shane", "Alan", "Laurel"]) assert hs.size == 3 assert hs.contains("Shane") == True assert hs.contains("Alan") == True assert hs.contains("Laurel") == True hs.remove("Alan") assert hs.size == 2 assert hs.contains("Alan") == False assert hs.contains("Shane") == True assert hs.contains("Laurel") == True hs.remove("Shane") assert hs.size == 1 assert hs.contains("Alan") == False assert hs.contains("Shane") == False assert hs.contains("Laurel") == True hs.remove("Laurel") assert hs.size == 0 assert hs.contains("Alan") == False assert hs.contains("Shane") == False assert hs.contains("Laurel") == False