コード例 #1
0
 def _execute_delete(self, delete_func: callable, filter: dict) -> None:
     try:
         _result = delete_func(filter)
     except pymongo.errors.PyMongoError as exc:
         raise ds_exceptions.DoesNotExist(
             f'Could not remove data with "{filter}": {exc}') from None
     else:
         if not _result.deleted_count > 0:
             raise ds_exceptions.DoesNotExist(
                 f'Could not remove data with "{filter}": '
                 f'delete command returned "{_result.deleted_count}"')
コード例 #2
0
 def test_should_raise_exception_if_journal_does_not_exists(self):
     self.request.matchdict = {"journal_id": "random-journal-id"}
     self.request.validated = {"aop": "001"}
     self.request.services["set_ahead_of_print_bundle_to_journal"] = Mock(
         side_effect=exceptions.DoesNotExist())
     self.assertIsInstance(restfulapi.patch_journal_aop(self.request),
                           HTTPNotFound)
コード例 #3
0
 def test_should_return_404_if_journal_not_found(self):
     self.request.matchdict["journal_id"] = "example-journal-id"
     self.request.validated = [{"id": "issue-1", "ns": []}]
     MockUpdateIssuesInJournal = Mock(
         side_effect=exceptions.DoesNotExist("Does Not Exist"))
     self.request.services[
         "update_issues_in_journal"] = MockUpdateIssuesInJournal
     response = restfulapi.put_journal_issues(self.request)
     self.assertIsInstance(response, HTTPNotFound)
コード例 #4
0
 def test_should_return_404_if_bundle_not_found(self):
     self.request.matchdict["bundle_id"] = "example-bundle-id"
     self.request.validated = [{"id": "doc-1"}]
     MockUpdateDocumentsInIssues = Mock(
         side_effect=exceptions.DoesNotExist("Does Not Exist"))
     self.request.services[
         "update_documents_in_documents_bundle"] = MockUpdateDocumentsInIssues
     response = restfulapi.put_bundles_documents(self.request)
     self.assertIsInstance(response, HTTPNotFound)
コード例 #5
0
 def test_fetch_documents_bundle_raises_not_found_if_bundle_does_not_exist(self):
     self.request.matchdict["bundle_id"] = "0034-8910-rsp-48-2"
     MockFetchDocumentsBundle = Mock(
         side_effect=exceptions.DoesNotExist("Does Not Exist")
     )
     self.request.services["fetch_documents_bundle"] = MockFetchDocumentsBundle
     response = restfulapi.fetch_documents_bundle(self.request)
     self.assertIsInstance(response, HTTPNotFound)
     self.assertEqual(response.message, "Does Not Exist")
コード例 #6
0
 def test_delete_journal_issues_returns_404_if_no_journal_nor_issue_found(
         self):
     self.request.matchdict["journal_id"] = "1678-4596-cr"
     self.request.validated = {"issue": "1678-4596-cr-25-3"}
     MockRemoveIssueFromJournal = Mock(
         side_effect=exceptions.DoesNotExist("Does Not Exist"))
     self.request.services[
         "remove_issue_from_journal"] = MockRemoveIssueFromJournal
     response = restfulapi.delete_journal_issues(self.request)
     self.assertIsInstance(response, HTTPNotFound)
コード例 #7
0
 def test_patch_documents_bundle_return_404_if_no_bundle_found(self):
     self.request.matchdict["bundle_id"] = "0034-8910-rsp-48-2"
     self.request.validated = apptesting.documents_bundle_registry_data_fixture(
     )
     MockUpdateDocumentsBundle = Mock(
         side_effect=exceptions.DoesNotExist("Does Not Exist"))
     self.request.services[
         "update_documents_bundle_metadata"] = MockUpdateDocumentsBundle
     response = restfulapi.patch_documents_bundle(self.request)
     self.assertIsInstance(response, HTTPNotFound)
コード例 #8
0
 def test_returns_HTTPNotFound_when_document_doesnt_exist(self):
     request = make_request()
     request.matchdict = {"document_id": "my-testing-doc"}
     request.validated = {
         "filename": "0034-8910-rsp-48-2-0347.xml",
         "data_url":
         "https://files.scielo.br/aksjhdf/0034-8910-rsp-48-2-0347.pdf",
         "mimetype": "application/pdf",
         "lang": "pt",
         "size_bytes": 23456,
     }
     request.services["register_rendition_version"] = Mock(
         side_effect=exceptions.DoesNotExist())
     response = restfulapi.register_rendition_version(request)
     self.assertIsInstance(response, HTTPNotFound)
コード例 #9
0
 def test_patch_journal_issues_returns_404_if_no_journal_found(self):
     self.request.matchdict["journal_id"] = "1678-4596-cr"
     commands_data = (
         ("add_issue_to_journal", {
             "issue": "1678-4596-cr-25-3"
         }),
         ("insert_issue_to_journal", {
             "issue": "1678-4596-cr-25-3",
             "index": 2
         }),
     )
     for command, data in commands_data:
         with self.subTest(command=command, data=data):
             self.request.validated = data
             MockPatchJournal = Mock(
                 side_effect=exceptions.DoesNotExist("Does Not Exist"))
             self.request.services[command] = MockPatchJournal
             response = restfulapi.patch_journal_issues(self.request)
             self.assertIsInstance(response, HTTPNotFound)
コード例 #10
0
 def fetch(self, id: str) -> dict:
     try:
         return self._ids[id]
     except KeyError:
         raise exceptions.DoesNotExist()
コード例 #11
0
 def fetch(self, id):
     manifest = self._data_store.get(id)
     if manifest:
         return self.DomainClass(manifest=manifest)
     else:
         raise exceptions.DoesNotExist()
コード例 #12
0
 def test_should_raise_exception_if_journal_does_not_has_aop(self):
     self.request.matchdict = {"journal_id": "1678-4596-cr-49-02"}
     self.request.services["set_ahead_of_print_bundle_to_journal"] = Mock(
         side_effect=exceptions.DoesNotExist())
     self.assertIsInstance(restfulapi.delete_journal_aop(self.request),
                           HTTPNotFound)