def test_immutable(self): i = ImmutableDict({"true": True}) with self.assertRaises(RuntimeError): i.clear() with self.assertRaises(RuntimeError): i.pop("true") with self.assertRaises(RuntimeError): i.popitem() with self.assertRaises(RuntimeError): i.setdefault("false", False) with self.assertRaises(RuntimeError): i.update(one=1) self.assertEqual(i, {"true": True})
def test_parent_class(self): i = ImmutableDict() self.assertIsInstance(i, dict)
def test_cant_call_init_again(self): i = ImmutableDict({"foo": True}) with self.assertRaises(RuntimeError): i.__init__()
def test_iterators(self): i = ImmutableDict() self.assertNotIsInstance(i.items(), (list, tuple)) self.assertNotIsInstance(i.keys(), (list, tuple)) self.assertNotIsInstance(i.values(), (list, tuple))