| @@ 330-347 (lines=18) @@ | ||
| 327 | val = b['a', 'b', 'e'] |
|
| 328 | print(val) |
|
| 329 | ||
| 330 | def test_get_item_with_keys_list_and_no_keypath_separator(self): |
|
| 331 | d = { |
|
| 332 | 'a': { |
|
| 333 | 'b': { |
|
| 334 | 'c': 1, |
|
| 335 | 'd': 2, |
|
| 336 | }, |
|
| 337 | }, |
|
| 338 | } |
|
| 339 | b = KeypathDict(d, keypath_separator=None) |
|
| 340 | with self.assertRaises(KeyError): |
|
| 341 | val = b['a', 'b.c'] |
|
| 342 | print(val) |
|
| 343 | self.assertEqual(b['a', 'b', 'c'], 1) |
|
| 344 | self.assertEqual(b['a', 'b', 'd'], 2) |
|
| 345 | with self.assertRaises(KeyError): |
|
| 346 | val = b['a', 'b', 'e'] |
|
| 347 | print(val) |
|
| 348 | ||
| 349 | def test_has_with_1_key(self): |
|
| 350 | d = { |
|
| @@ 313-328 (lines=16) @@ | ||
| 310 | val = b['c.b.a'] |
|
| 311 | print(val) |
|
| 312 | ||
| 313 | def test_get_item_with_keys_list(self): |
|
| 314 | d = { |
|
| 315 | 'a': { |
|
| 316 | 'b': { |
|
| 317 | 'c': 1, |
|
| 318 | 'd': 2, |
|
| 319 | }, |
|
| 320 | }, |
|
| 321 | } |
|
| 322 | b = KeypathDict(d) |
|
| 323 | self.assertEqual(b['a', 'b.c'], 1) |
|
| 324 | self.assertEqual(b['a', 'b', 'c'], 1) |
|
| 325 | self.assertEqual(b['a', 'b', 'd'], 2) |
|
| 326 | with self.assertRaises(KeyError): |
|
| 327 | val = b['a', 'b', 'e'] |
|
| 328 | print(val) |
|
| 329 | ||
| 330 | def test_get_item_with_keys_list_and_no_keypath_separator(self): |
|
| 331 | d = { |
|