def test_create_file_conflict(self, mock_requests_post, mock_create_session, mock_get_link, mock_get_file): ingest_api = IngestApi(token_manager=self.token_manager) mock_get_file.return_value = { '_embedded': { 'files': [{ 'content': { 'attr': 'value' }, '_links': { 'self': { 'href': 'existing-file-url' } } }] } } mock_get_link.return_value = 'url/sub/id/files' mock_create_session.return_value.patch.return_value.json.return_value = 'response' mock_requests_post.return_value.status_code = requests.codes.conflict api_url = mock_ingest_api_url submission_id = mock_submission_envelope_id submission_url = api_url + "/" + submission_id filename = "mock-filename" file = ingest_api.create_file(submission_url, filename, {'attr2': 'value2'}) self.assertEqual(file, 'response') mock_requests_post.assert_called_once() mock_create_session.return_value.patch \ .assert_called_with('existing-file-url', headers={'Content-type': 'application/json', 'Authorization': 'Bearer token'}, json={'content': {'attr': 'value', 'attr2': 'value2'}})
def test_create_file(self, mock_requests_post, mock_create_session, mock_get_link): ingest_api = IngestApi(token_manager=self.token_manager) mock_get_link.return_value = 'url/sub/id/files' mock_requests_post.return_value.json.return_value = { 'uuid': 'file-uuid' } mock_requests_post.return_value.status_code = requests.codes.ok api_url = mock_ingest_api_url submission_id = mock_submission_envelope_id submission_url = api_url + "/" + submission_id filename = "mock-filename" file = ingest_api.create_file(submission_url, filename, {}) self.assertEqual(file, {'uuid': 'file-uuid'}) mock_requests_post.assert_called_with('url/sub/id/files', headers={ 'Content-type': 'application/json', 'Authorization': 'Bearer token' }, json={ 'fileName': 'mock-filename', 'content': {} }, params={})