@@ -82,41 +82,3 @@ def union_no_overlap(events1: List[Event], events2: List[Event]) -> List[Event]:
8282 events_union += events1 [e1_i :]
8383 events_union += events2 [e2_i :]
8484 return events_union
85-
86-
87- def test_union_no_overlap ():
88- from pprint import pprint
89-
90- now = datetime (2018 , 1 , 1 , 0 , 0 )
91- td1h = timedelta (hours = 1 )
92- events1 = [
93- Event (timestamp = now + 2 * i * td1h , duration = td1h , data = {"test" : 1 })
94- for i in range (3 )
95- ]
96- events2 = [
97- Event (timestamp = now + (2 * i + 0.5 ) * td1h , duration = td1h , data = {"test" : 2 })
98- for i in range (3 )
99- ]
100-
101- events_union = _union_no_overlap (events1 , events2 )
102- # pprint(events_union)
103- dur = sum ((e .duration for e in events_union ), timedelta (0 ))
104- assert dur == timedelta (hours = 4 , minutes = 30 )
105- assert sorted (events_union , key = lambda e : e .timestamp )
106-
107- events_union = _union_no_overlap (events2 , events1 )
108- # pprint(events_union)
109- dur = sum ((e .duration for e in events_union ), timedelta (0 ))
110- assert dur == timedelta (hours = 4 , minutes = 30 )
111- assert sorted (events_union , key = lambda e : e .timestamp )
112-
113- events1 = [
114- Event (timestamp = now + (2 * i ) * td1h , duration = td1h , data = {"test" : 1 })
115- for i in range (3 )
116- ]
117- events2 = [Event (timestamp = now , duration = 5 * td1h , data = {"test" : 2 })]
118- events_union = _union_no_overlap (events1 , events2 )
119- pprint (events_union )
120- dur = sum ((e .duration for e in events_union ), timedelta (0 ))
121- assert dur == timedelta (hours = 5 , minutes = 0 )
122- assert sorted (events_union , key = lambda e : e .timestamp )
0 commit comments