From 9c12edcae9cb59b7d0f99e9fe1960880936b87f1 Mon Sep 17 00:00:00 2001 From: Olivier Desenfans Date: Fri, 14 Oct 2022 14:21:14 +0200 Subject: [PATCH] Fix: reactivate message API time filters (#345) Problem: the time filters are ignored in the messages.json endpoint since #337. Solution: reactivate the filtering. --- src/aleph/web/controllers/messages.py | 10 ++++++++++ tests/api/test_messages.py | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/aleph/web/controllers/messages.py b/src/aleph/web/controllers/messages.py index 4c45802a1..ef56d3eef 100644 --- a/src/aleph/web/controllers/messages.py +++ b/src/aleph/web/controllers/messages.py @@ -14,6 +14,7 @@ LIST_FIELD_SEPARATOR, Pagination, cond_output, + make_date_filters, ) LOGGER = logging.getLogger(__name__) @@ -175,6 +176,15 @@ class MessageQueryParams(BaseMessageQueryParams): "a time field lower than this value will be returned.", ) + def to_filter_list(self) -> List[Mapping[str, Any]]: + filters = super().to_filter_list() + date_filters = make_date_filters( + start=self.start_date, end=self.end_date, filter_key="time" + ) + if date_filters: + filters.append(date_filters) + return filters + class WsMessageQueryParams(BaseMessageQueryParams): history: Optional[int] = Field( diff --git a/tests/api/test_messages.py b/tests/api/test_messages.py index b00498088..bd07f449c 100644 --- a/tests/api/test_messages.py +++ b/tests/api/test_messages.py @@ -171,7 +171,7 @@ async def fetch_messages_filter_time_expect_success( @pytest.mark.asyncio async def test_time_filters(fixture_messages, ccn_api_client): # Start and end time specified, should return all messages - start_time, end_time = 164821580, 1648215820 + start_time, end_time = 1648215900, 1652126600 messages = await fetch_messages_filter_time_expect_success( ccn_api_client, start=start_time, end=end_time )