def test_multiple_metrics(self): s = InMemoryMetricsStore() s.add_metrics_point({"m1": 1, "m2": -1}, timestamp=1) s.add_metrics_point({"m1": 2, "m2": -2}, timestamp=2) assert s.window_average("m1", window_start_timestamp_s=0) == 1.5 assert s.max("m1", window_start_timestamp_s=0) == 2 assert s.max("m2", window_start_timestamp_s=0) == -1
def test_window_start_timestamp(self): s = InMemoryMetricsStore() assert s.window_average("m1", window_start_timestamp_s=0) is None assert s.max("m1", window_start_timestamp_s=0) is None s.add_metrics_point({"m1": 1}, timestamp=2) assert s.window_average("m1", window_start_timestamp_s=0) == 1 assert (s.window_average( "m1", window_start_timestamp_s=10, do_compact=False) is None)
def test_out_of_order_insert(self): s = InMemoryMetricsStore() s.add_metrics_point({"m1": 1}, timestamp=1) s.add_metrics_point({"m1": 5}, timestamp=5) s.add_metrics_point({"m1": 3}, timestamp=3) s.add_metrics_point({"m1": 2}, timestamp=2) s.add_metrics_point({"m1": 4}, timestamp=4) assert s.window_average("m1", window_start_timestamp_s=0) == 3 assert s.max("m1", window_start_timestamp_s=0) == 5
def test_compaction_max(self): s = InMemoryMetricsStore() s.add_metrics_point({"m1": 1}, timestamp=2) s.add_metrics_point({"m1": 2}, timestamp=1) assert s.max("m1", window_start_timestamp_s=0, do_compact=False) == 2 s.window_average("m1", window_start_timestamp_s=1.1, do_compact=True) assert s.window_average("m1", window_start_timestamp_s=0, do_compact=False) == 1
def test_basics(self): s = InMemoryMetricsStore() s.add_metrics_point({"m1": 1}, timestamp=1) s.add_metrics_point({"m1": 2}, timestamp=2) assert s.window_average("m1", window_start_timestamp_s=0) == 1.5 assert s.max("m1", window_start_timestamp_s=0) == 2