def test_get_remote_url_metadata_succeeds(self): """Tests if get_remote_url_metadata working properly """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.get_remote_url_metadata( remote_file_url="http://imagekit.io/default.jpg") self.assertIsNone(resp["error"]) self.assertIsNotNone("response") self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.get_metadata(file_id=self.file_id) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_file_details_succeeds_with_url(self) -> None: self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp(message=SUCCESS_DETAIL_MSG) ) resp = self.client.get_file_details(self.file_url) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_update_file_details_succeeds_with_id(self): """ Tests if update_file_details succeeds with file_url """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp() ) # generate expected encoded private key for the auth headers private_key_file_upload = ClientTestCase.private_key if private_key_file_upload != ":": private_key_file_upload += ":" encoded_private_key = base64.b64encode(private_key_file_upload.encode()).decode( "utf-8" ) resp = self.client.update_file_details( file_id=self.file_id, options=self.valid_options ) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"]) self.client.ik_request.request.assert_called_once_with( method="Patch", url="{}/{}/details/".format(URL.BASE_URL.value, self.file_id), headers={'Content-Type': 'application/json', 'Authorization': "Basic {}".format(encoded_private_key)}, data=json.dumps(request_formatter(self.valid_options)) )
def test_file_upload_succeeds(self): """ Tests if file upload succeeds """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp() ) # generate expected encoded private key for the auth headers private_key_file_upload = ClientTestCase.private_key if private_key_file_upload != ":": private_key_file_upload += ":" encoded_private_key = base64.b64encode(private_key_file_upload.encode()).decode( "utf-8" ) resp = self.client.upload_file(file=self.image, file_name=self.filename) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"]) self.client.ik_request.request.assert_called_once_with( "Post", url=URL.UPLOAD_URL.value, files={ 'file': (None, self.image), 'fileName': (None, self.filename) }, data={}, headers={'Accept-Encoding': 'gzip, deflate', 'Authorization': "Basic {}".format(encoded_private_key)} )
def test_purge_file_cache_status_succeeds(self) -> None: """Test get_purge_file_cache_status working properly """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp(message=SUCCESS_PURGE_CACHE_STATUS_MSG) ) resp = self.client.get_purge_file_cache_status(self.cache_request_id) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_upload_succeeds(self): """ Tests if upload succeeds """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.upload(file=self.image, file_name=self.filename) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_get_metadata_succeeds(self): """Tests if get_metadata working properly """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.get_metadata(file_id=self.file_id) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_update_file_details_succeeds_with_id(self): """ Tests if update_file_details succeeds with file_url """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.update_file_details(file_id=self.file_id, options=self.valid_options) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_purge_file_cache_succeeds(self) -> None: """Test purge_file_cache working properly """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp(message=SUCCESS_PURGE_CACHE_MSG) ) resp = self.client.purge_file_cache(self.fake_image_url) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"]) self.assertIn("request_id", resp["response"])
def test_bulk_file_delete_succeeds(self): """Test bulk_delete on authenticated request this function tests if bulk_file_delete working properly """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp({"error": None, "response": {'successfullyDeletedFileIds': ['5e785a03ed03082733b979ec', '5e787c4427dd2a6c2fc564a5']}}) ) resp = self.client.bulk_file_delete(self.bulk_delete_ids) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_file_delete_succeeds(self): """Test delete file on authenticated request this function tests if delete_file working properly """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp({"error": None, "response": None}) ) resp = self.client.delete_file(self.file_id) self.assertIsNone(resp["error"]) self.assertIsNone(resp["response"])
def test_base64_upload_succeeds(self): """ Tests if upload succeeds """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) with open(self.image, mode="rb") as img: imgstr = base64.b64encode(img.read()) resp = self.client.upload(file=imgstr, file_name=self.filename) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_list_files_succeeds_with_basic_request(self) -> None: """ Tests if list_files work with skip and limit """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp(message=SUCCESS_LIST_RESP_MESSAGE) ) resp = self.client.list_files(self.options) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_absence_of_params_gives_proper_resp(self) -> None: self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.upload(file=self.image, file_name="x", options={ "is_private_file": "", "tags": None, "custom_coordinates": None, "use_unique_file_name": None, "folder": None }) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_list_accepting_all_parameter(self): """ checking if list accept all parameter """ self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp()) resp = self.client.list_files(options={ "file_type": "image", "tags": ["tag1", "tag2"], "include_folder": True, "name": "new-dir", "limit": "1", "skip": "1", }, ) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_all_params_being_passed_on_upload(self) -> None: self.client.ik_request.request = MagicMock( return_value=get_mocked_success_resp() ) resp = self.client.upload( file=self.image, file_name="fileabc", options={ "is_private_file": True, "tags": ["abc"], "response_fields": ["is_private_file", "tags"], "custom_coordinates": "10,10,100,100", "use_unique_file_name": True, "folder": "abc" } ) self.assertIsNone(resp["error"]) self.assertIsNotNone(resp["response"])
def test_file_details_succeeds_with_url(self): self.client.ik_request = MagicMock(return_value=get_mocked_success_resp())