From 55ad5a6d873bcdbcce87d2f888ac3256d690cc1c Mon Sep 17 00:00:00 2001 From: Dominik Bruhn Date: Fri, 7 Jun 2024 17:02:18 +0200 Subject: [PATCH] Add test for broken parameters --- src/documents/tests/test_api_bulk_edit.py | 30 +++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/documents/tests/test_api_bulk_edit.py b/src/documents/tests/test_api_bulk_edit.py index 1645a4df1..fd554460e 100644 --- a/src/documents/tests/test_api_bulk_edit.py +++ b/src/documents/tests/test_api_bulk_edit.py @@ -1040,6 +1040,36 @@ class TestBulkEditAPI(DirectoriesMixin, APITestCase): self.assertEqual(response.status_code, status.HTTP_200_OK) m.assert_called_once() + @mock.patch("documents.serialisers.bulk_edit.merge") + def test_merge_and_delete_broken_parameters(self, m): + """ + GIVEN: + - API data for merging documents is called + - The parameters are invalid + WHEN: + - API is called + THEN: + - The API fails with a correct error code + """ + m.return_value = "OK" + + response = self.client.post( + "/api/documents/bulk_edit/", + json.dumps( + { + "documents": [self.doc1.id, self.doc2.id], + "method": "merge", + "parameters": { + "delete_originals": "not_boolean", + }, + }, + ), + content_type="application/json", + ) + + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + m.assert_not_called() + @mock.patch("documents.serialisers.bulk_edit.split") def test_split(self, m): m.return_value = "OK"