@@ -1431,6 +1431,22 @@ def _group_iterable_to_dict(self, item, group_by, item_name):
1431
1431
def get_stats (self ):
1432
1432
"""
1433
1433
Get some stats on internals of the DeepDiff run.
1434
+
1435
+ Example
1436
+ >>> t1 = {1: 1, 2: 2, 3: [3], 4: 4}
1437
+ >>> t2 = {1: 1, 2: 4, 3: [3, 4], 5: 5, 6: 6}
1438
+ >>> ddiff = DeepDiff(t1, t2)
1439
+ >>> ddiff
1440
+ >>> pprint(ddiff, indent=4)
1441
+ { 'dictionary_item_added': [root[5], root[6]],
1442
+ 'dictionary_item_removed': [root[4]],
1443
+ 'iterable_item_added': {'root[3][1]': 4},
1444
+ 'values_changed': {'root[2]': {'new_value': 4, 'old_value': 2}}}
1445
+ >>> ddiff.affected_paths
1446
+ OrderedSet(['root[3][1]', 'root[4]', 'root[5]', 'root[6]', 'root[2]'])
1447
+ >>> ddiff.affected_root_keys
1448
+ OrderedSet([3, 4, 5, 6, 2])
1449
+
1434
1450
"""
1435
1451
return self ._stats
1436
1452
@@ -1455,6 +1471,21 @@ def affected_root_keys(self):
1455
1471
"""
1456
1472
Get the list of root keys that were affected.
1457
1473
Whether a value was changed or they were added or removed.
1474
+
1475
+ Example
1476
+ >>> t1 = {1: 1, 2: 2, 3: [3], 4: 4}
1477
+ >>> t2 = {1: 1, 2: 4, 3: [3, 4], 5: 5, 6: 6}
1478
+ >>> ddiff = DeepDiff(t1, t2)
1479
+ >>> ddiff
1480
+ >>> pprint(ddiff, indent=4)
1481
+ { 'dictionary_item_added': [root[5], root[6]],
1482
+ 'dictionary_item_removed': [root[4]],
1483
+ 'iterable_item_added': {'root[3][1]': 4},
1484
+ 'values_changed': {'root[2]': {'new_value': 4, 'old_value': 2}}}
1485
+ >>> ddiff.affected_paths
1486
+ OrderedSet(['root[3][1]', 'root[4]', 'root[5]', 'root[6]', 'root[2]'])
1487
+ >>> ddiff.affected_root_keys
1488
+ OrderedSet([3, 4, 5, 6, 2])
1458
1489
"""
1459
1490
result = OrderedSet ()
1460
1491
for key in REPORT_KEYS :
0 commit comments