def test_delete(self): nd = NestedDict(self.data) self.assertIn("b", nd["a"]) delattr(nd["a"], "b") self.assertNotIn("b", nd["a"]) self.assertIn("e", nd["a"]) del nd["a"]["e"] self.assertNotIn("e", nd["a"]) self.assertIn("a", nd) nd.delete("a") self.assertNotIn("a", nd)