Esempio n. 1
0
    def test_end_range_in_tumbling_window_is_within_range(self):
        tumbling = TumblingWindow(10)

        # tumbling windows only have one range
        base_range = tumbling.ranges(0)[0]
        base_range_end = base_range.end

        compare_range = tumbling.ranges(base_range_end)[0]

        assert base_range.start == compare_range.start
        assert base_range.end == compare_range.end
Esempio n. 2
0
async def test_tumbling_window_ranges() -> None:
    """Test Faust tumbling window ranges."""
    size = 1.0
    window = TumblingWindow(size)
    # Test if a timestamp in the extremes of the window falls in the expected
    # window
    start = 0
    end = 0.9
    assert window.ranges(start) == [(start, end)]
    assert window.ranges(end) == [(start, end)]
    assert window.ranges(start + size) == [(start + size, end + size)]
    # Test if a timestamp between (start + end) and (start + size) falls
    # in the expected window
    assert window.ranges(start + end + 0.05) == [(start, end)]
Esempio n. 3
0
 def test_tumbling_window_has_just_one_range(self):
     tumbling = TumblingWindow(10)
     assert len(tumbling.ranges(0)) == 1
     assert len(tumbling.ranges(5)) == 1
     assert len(tumbling.ranges(10)) == 1
Esempio n. 4
0
    def test_earliest_and_current_range_are_the_same(self):
        size = 57
        timestamp = 456
        window = TumblingWindow(size)

        assert window.current(timestamp) == window.earliest(timestamp)