def test_get_item(self): metadata = Metadata(("key", "value1"), ("key", "value2"), ("key2", "other value")) self.assertEqual(metadata["key"], "value1") self.assertEqual(metadata["key2"], "other value") self.assertEqual(metadata.get("key"), "value1") self.assertEqual(metadata.get("key2"), "other value") with self.assertRaises(KeyError): metadata["key not found"] self.assertIsNone(metadata.get("key not found"))
def test_delete_values(self): metadata = Metadata(*self._MULTI_ENTRY_DATA) del metadata["key1"] self.assertEqual(metadata.get("key1"), "other value 1") metadata.delete_all("key1") self.assertNotIn("key1", metadata) metadata.delete_all("key2") self.assertEqual(len(metadata), 0) with self.assertRaises(KeyError): del metadata["other key"]