From 2ce687058ce1b604af86654c956f744ffeff6d37 Mon Sep 17 00:00:00 2001 From: Rui Alves Date: Tue, 19 Nov 2024 21:17:54 +0000 Subject: [PATCH] Added more tests for review endpoint --- frigate/test/http_api/test_http_review.py | 37 ++++++++++++++++++++--- 1 file changed, 33 insertions(+), 4 deletions(-) diff --git a/frigate/test/http_api/test_http_review.py b/frigate/test/http_api/test_http_review.py index 8cb67db41..5916f1216 100644 --- a/frigate/test/http_api/test_http_review.py +++ b/frigate/test/http_api/test_http_review.py @@ -11,21 +11,50 @@ class TestHttpReview(BaseTestHttp): super().setUp([Event, ReviewSegment]) # Does not return any data point since the end time (before parameter) is not passed and the review segment end_time is 20 seconds from now - def test_get_reviews_no_filters(self): + def test_get_reviews_no_filters_no_matches(self): app = super().create_app() + now = datetime.datetime.now().timestamp() with TestClient(app) as client: - super().insert_mock_review_segment("123456.random") + super().insert_mock_review_segment("123456.random", now, now + 20) reviews_response = client.get("/review") assert reviews_response.status_code == 200 - assert len(reviews_response.json()) == 0 + reviews_in_response = reviews_response.json() + assert len(reviews_in_response) == 0 + + def test_get_reviews_no_filters(self): + app = super().create_app() + now = datetime.datetime.now().timestamp() + + with TestClient(app) as client: + super().insert_mock_review_segment("123456.random", now - 2, now - 1) + reviews_response = client.get("/review") + assert reviews_response.status_code == 200 + reviews_in_response = reviews_response.json() + assert len(reviews_in_response) == 1 + + def test_get_with_time_filter_no_matches(self): + app = super().create_app() + now = datetime.datetime.now().timestamp() + + with TestClient(app) as client: + id = "123456.random" + super().insert_mock_review_segment(id, now, now + 20) + params = { + "after": now, + "before": now + 21, + } + reviews_response = client.get("/review", params=params) + assert reviews_response.status_code == 200 + reviews_in_response = reviews_response.json() + assert len(reviews_in_response) == 0 def test_get_with_time_filter(self): app = super().create_app() now = datetime.datetime.now().timestamp() with TestClient(app) as client: - id = "4566.random" + id = "123456.random" super().insert_mock_review_segment(id, now, now + 20) params = { "after": now - 1,