|
| 1 | +import datetime |
| 2 | + |
| 3 | +from dateutil.rrule import MONTHLY, rrule |
| 4 | + |
| 5 | +from deepdiff import DeepDiff |
| 6 | + |
| 7 | + |
| 8 | +class TestDeltaIterables: |
| 9 | + def test_diff_rrules(self): |
| 10 | + |
| 11 | + d = DeepDiff( |
| 12 | + rrule(freq=MONTHLY, count=5, dtstart=datetime.datetime(2014, 12, 31)), |
| 13 | + rrule(freq=MONTHLY, count=4, dtstart=datetime.datetime(2011, 12, 31)), |
| 14 | + ) |
| 15 | + |
| 16 | + assert d == { |
| 17 | + "values_changed": { |
| 18 | + "root[0]": { |
| 19 | + "new_value": datetime.datetime(2011, 12, 31, 0, 0), |
| 20 | + "old_value": datetime.datetime(2014, 12, 31, 0, 0), |
| 21 | + }, |
| 22 | + "root[1]": { |
| 23 | + "new_value": datetime.datetime(2012, 1, 31, 0, 0), |
| 24 | + "old_value": datetime.datetime(2015, 1, 31, 0, 0), |
| 25 | + }, |
| 26 | + "root[2]": { |
| 27 | + "new_value": datetime.datetime(2012, 3, 31, 0, 0), |
| 28 | + "old_value": datetime.datetime(2015, 3, 31, 0, 0), |
| 29 | + }, |
| 30 | + "root[3]": { |
| 31 | + "new_value": datetime.datetime(2012, 5, 31, 0, 0), |
| 32 | + "old_value": datetime.datetime(2015, 5, 31, 0, 0), |
| 33 | + }, |
| 34 | + }, |
| 35 | + "iterable_item_removed": {"root[4]": datetime.datetime(2015, 7, 31, 0, 0)}, |
| 36 | + } |
0 commit comments