示例#1
0
 def test_pull__string_arg__raises_TypeError(self):
     a = NestedDict({"k": "v"})
     with self.assertRaises(AttributeError):
         a.pull("k", "v")
示例#2
0
 def test_pull__string_arg__raises_ValueError(self):
     a = NestedDict({"k": []})
     with self.assertRaises(ValueError):
         a.pull("k", "v")
示例#3
0
 def test_pull__string_arg__raises_KeyError(self):
     a = NestedDict()
     with self.assertRaises(KeyError):
         a.pull("k", "v")
示例#4
0
 def test_pull__path_arg(self):
     a = NestedDict({"k1": {"k2": {"k3": ["v"]}}})
     a.pull(("k1", "k2", "k3"), "v")
     self.assertEqual(a, {"k1": {"k2": {"k3": []}}})
示例#5
0
 def test_pull__cleanup_True__removes_empty_containers(self):
     a = NestedDict({"k": ["v"]})
     a.pull("k", "v", cleanup=True)
     self.assertEqual(a, {})
示例#6
0
 def test_pull__string_arg(self):
     a = NestedDict({"k": ["v"]})
     a.pull("k", "v")
     self.assertEqual(a, {"k": []})