From c7292289f3f80c9a84785dfc385b97cb2199be2c Mon Sep 17 00:00:00 2001 From: "martin f. krafft" Date: Thu, 13 Jun 2024 10:13:29 +0200 Subject: [PATCH] Ensure order of documents in permissions test The patch for #6982 changes the ordering of documents returned by the API, which was previously implicit, and is now explicit. Therefore, this patch masssages the API result to ensure the previous order. Signed-off-by: martin f. krafft --- src/documents/tests/test_api_permissions.py | 28 +++++++++++++-------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/src/documents/tests/test_api_permissions.py b/src/documents/tests/test_api_permissions.py index d7131b834..7708b8541 100644 --- a/src/documents/tests/test_api_permissions.py +++ b/src/documents/tests/test_api_permissions.py @@ -432,13 +432,18 @@ class TestApiAuth(DirectoriesMixin, APITestCase): resp_data = response.json() - self.assertNotIn("permissions", resp_data["results"][0]) - self.assertIn("user_can_change", resp_data["results"][0]) - self.assertTrue(resp_data["results"][0]["user_can_change"]) # doc1 - self.assertFalse(resp_data["results"][0]["is_shared_by_requester"]) # doc1 - self.assertFalse(resp_data["results"][1]["user_can_change"]) # doc2 - self.assertTrue(resp_data["results"][2]["user_can_change"]) # doc3 - self.assertTrue(resp_data["results"][3]["is_shared_by_requester"]) # doc4 + # The response will contain the documents in reversed order of creation + # due to #6982, but previously this code relied on implicit ordering + # so let's ensure the order is as expected: + results = resp_data["results"][::-1] + + self.assertNotIn("permissions", results[0]) + self.assertIn("user_can_change", results[0]) + self.assertTrue(results[0]["user_can_change"]) # doc1 + self.assertFalse(results[0]["is_shared_by_requester"]) # doc1 + self.assertFalse(results[1]["user_can_change"]) # doc2 + self.assertTrue(results[2]["user_can_change"]) # doc3 + self.assertTrue(results[3]["is_shared_by_requester"]) # doc4 response = self.client.get( "/api/documents/?full_perms=true", @@ -449,9 +454,12 @@ class TestApiAuth(DirectoriesMixin, APITestCase): resp_data = response.json() - self.assertIn("permissions", resp_data["results"][0]) - self.assertNotIn("user_can_change", resp_data["results"][0]) - self.assertNotIn("is_shared_by_requester", resp_data["results"][0]) + # See above about response ordering + results = resp_data["results"][::-1] + + self.assertIn("permissions", results[0]) + self.assertNotIn("user_can_change", results[0]) + self.assertNotIn("is_shared_by_requester", results[0]) class TestApiUser(DirectoriesMixin, APITestCase):