def test_heartbeat_reduce():
    """Events should reduce"""
    now = datetime.now()
    td_1s = timedelta(seconds=1)

    # Check that empty list works
    assert not heartbeat_reduce([], pulsetime=1)

    events = [Event(timestamp=now, data={"label": "test"}), Event(timestamp=now + td_1s, data={"label": "test"})]
    reduced_events = heartbeat_reduce(events, pulsetime=2)
    assert len(reduced_events) == 1
Example #2
0
def test_heartbeat_reduce():
    """Events should reduce"""
    now = datetime.now()
    td_1s = timedelta(seconds=1)

    # Check that empty list works
    assert not heartbeat_reduce([], pulsetime=1)

    events = [Event(timestamp=now, data={"label": "test"}), Event(timestamp=now + td_1s, data={"label": "test"})]
    reduced_events = heartbeat_reduce(events, pulsetime=2)
    assert len(reduced_events) == 1
Example #3
0
def test_heartbeat_same_timestamp():
    now = datetime.now()
    td_1s = timedelta(seconds=1)
    td_0s = timedelta(seconds=0)

    e1 = Event(timestamp=now, duration=td_1s, data={"label": "test"})
    e2 = Event(timestamp=now, duration=td_0s, data={"label": "test"})

    # Should merge
    res = heartbeat_reduce(list([e1, e2]), pulsetime=5)
    assert len(res) == 1
    assert res[0].duration == td_1s

    # Order shouldn't matter, should merge
    res = heartbeat_reduce([e2, e1], pulsetime=5)
    assert len(res) == 1
    assert res[0].duration == td_1s
def test_heartbeat_reduce_fail():
    """Events should not reduce"""
    now = datetime.now()
    td_1s = timedelta(seconds=1)

    events = [Event(timestamp=now, data={"label": "test"}), Event(timestamp=now + 3*td_1s, data={"label": "test"})]
    reduced_events = heartbeat_reduce(events, pulsetime=2)
    assert len(reduced_events) == 2
Example #5
0
def test_heartbeat_reduce_fail():
    """Events should not reduce"""
    now = datetime.now()
    td_1s = timedelta(seconds=1)

    events = [Event(timestamp=now, data={"label": "test"}), Event(timestamp=now + 3*td_1s, data={"label": "test"})]
    reduced_events = heartbeat_reduce(events, pulsetime=2)
    assert len(reduced_events) == 2
Example #6
0
def _main_heartbeat_reduce():
    logger.info("Retrieving events...")
    events = _get_window_events()
    events = simplify_string(events)

    logger.info("Beating hearts together...")
    merged_events = heartbeat_reduce(events, pulsetime=10)

    # Debugging
    assert_no_overlap(events)
    assert_no_overlap(merged_events)
    print_most_common_titles(events)
    print_most_common_titles(merged_events)