diff --git a/arkindex/dataimport/tests/test_imports.py b/arkindex/dataimport/tests/test_imports.py index 75e70e5ab1448ac45da6abeb899eae9cea0f945a..1787d5ffe980532daaf138b9091b71a15ad91631 100644 --- a/arkindex/dataimport/tests/test_imports.py +++ b/arkindex/dataimport/tests/test_imports.py @@ -68,6 +68,11 @@ class TestImports(FixtureAPITestCase): self.assertEqual(len(data['results']), 1) self.assertEqual(data['results'][0]['id'], str(dataimport2.id)) + def test_list_filter_unexisting_mode(self): + self.client.force_login(self.user) + response = self.client.get(reverse('api:import-list'), {'mode': 'unexisting_mode'}) + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + def test_list_filter_id(self): self.client.force_login(self.user) @@ -91,6 +96,29 @@ class TestImports(FixtureAPITestCase): response = self.client.get(reverse('api:import-details', kwargs={'pk': self.dataimport.id})) self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) + def test_details_destroy_no_permission(self): + self.client.force_login(self.user) + acl_rights = self.corpus.corpus_right.get(user=self.user) + acl_rights.can_write = False + acl_rights.can_admin = False + acl_rights.save() + response = self.client.delete(reverse('api:import-details', kwargs={'pk': self.dataimport.id})) + self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) + + def test_details_destroy_running(self): + self.client.force_login(self.user) + self.dataimport.start() + task = self.dataimport.workflow.tasks.all().last() + task.state = State.Running + task.save() + response = self.client.delete(reverse('api:import-details', kwargs={'pk': self.dataimport.id})) + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + + def test_details_destroy(self): + self.client.force_login(self.user) + response = self.client.delete(reverse('api:import-details', kwargs={'pk': self.dataimport.id})) + self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT) + def test_details(self): self.client.force_login(self.user) response = self.client.get(reverse('api:import-details', kwargs={'pk': self.dataimport.id})) @@ -125,6 +153,15 @@ class TestImports(FixtureAPITestCase): response = self.client.post(reverse('api:import-retry', kwargs={'pk': self.dataimport.id})) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + def test_retry_running(self): + self.client.force_login(self.user) + self.dataimport.start() + task = self.dataimport.workflow.tasks.all().last() + task.state = State.Running + task.save() + response = self.client.post(reverse('api:import-retry', kwargs={'pk': self.dataimport.id})) + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + def test_retry(self): self.client.force_login(self.user) self.dataimport.start()