From 4b3799013f4ee4f69e7a4497fcf36f3cc60224ee Mon Sep 17 00:00:00 2001 From: Michal Konečný Date: Jul 19 2023 12:39:00 +0000 Subject: Fix query filter for date ranges The query for pull request of user incorrectly worked with date ranges and instead it assumed that since is lesser or equal than the date we are comparing to. This commit is fixing that behavior. Signed-off-by: Michal Konečný --- diff --git a/pagure/lib/query.py b/pagure/lib/query.py index ad37aaf..a7a03ce 100644 --- a/pagure/lib/query.py +++ b/pagure/lib/query.py @@ -4656,12 +4656,12 @@ def get_pull_request_of_user( query = query.filter(model.PullRequest.date_created <= created_until) if updated_since: - query = query.filter(model.PullRequest.updated_on <= updated_since) + query = query.filter(model.PullRequest.updated_on >= updated_since) if updated_until: query = query.filter(model.PullRequest.updated_on <= updated_until) if closed_since: - query = query.filter(model.PullRequest.closed_at <= closed_since) + query = query.filter(model.PullRequest.closed_at >= closed_since) if closed_until: query = query.filter(model.PullRequest.closed_at <= closed_until) diff --git a/tests/test_pagure_flask_api_user.py b/tests/test_pagure_flask_api_user.py index d39d7d1..ea611c7 100644 --- a/tests/test_pagure_flask_api_user.py +++ b/tests/test_pagure_flask_api_user.py @@ -1214,7 +1214,7 @@ class PagureFlaskApiUsertestrequests(tests.Modeltests): ) self.assertEqual(output.status_code, 200) data = json.loads(output.get_data(as_text=True)) - self.assertEqual(len(data["requests"]), 0) + self.assertEqual(len(data["requests"]), 6) yesterday = today - datetime.timedelta(days=1) output = self.app.get( @@ -1223,7 +1223,7 @@ class PagureFlaskApiUsertestrequests(tests.Modeltests): ) self.assertEqual(output.status_code, 200) data = json.loads(output.get_data(as_text=True)) - self.assertEqual(len(data["requests"]), 0) + self.assertEqual(len(data["requests"]), 6) tomorrow = today + datetime.timedelta(days=1) output = self.app.get( @@ -1232,7 +1232,7 @@ class PagureFlaskApiUsertestrequests(tests.Modeltests): ) self.assertEqual(output.status_code, 200) data = json.loads(output.get_data(as_text=True)) - self.assertEqual(len(data["requests"]), 6) + self.assertEqual(len(data["requests"]), 0) @patch("pagure.lib.notify.send_email") def test_api_view_user_requests_filed_closed(self, mockemail): @@ -1598,7 +1598,7 @@ class PagureFlaskApiUsertestrequests(tests.Modeltests): ) self.assertEqual(output.status_code, 200) data = json.loads(output.get_data(as_text=True)) - self.assertEqual(len(data["requests"]), 0) + self.assertEqual(len(data["requests"]), 6) yesterday = today - datetime.timedelta(days=1) output = self.app.get( @@ -1607,7 +1607,7 @@ class PagureFlaskApiUsertestrequests(tests.Modeltests): ) self.assertEqual(output.status_code, 200) data = json.loads(output.get_data(as_text=True)) - self.assertEqual(len(data["requests"]), 0) + self.assertEqual(len(data["requests"]), 6) tomorrow = today + datetime.timedelta(days=1) output = self.app.get( @@ -1616,7 +1616,7 @@ class PagureFlaskApiUsertestrequests(tests.Modeltests): ) self.assertEqual(output.status_code, 200) data = json.loads(output.get_data(as_text=True)) - self.assertEqual(len(data["requests"]), 6) + self.assertEqual(len(data["requests"]), 0) @patch("pagure.lib.notify.send_email") def test_api_view_user_requests_actionable_closed(self, mockemail):