diff --git a/tests/test_directory_sync.py b/tests/test_directory_sync.py index 2e944d80..0b7ad52e 100644 --- a/tests/test_directory_sync.py +++ b/tests/test_directory_sync.py @@ -173,3 +173,10 @@ def test_list_directories(self, mock_directories, mock_request_method): response = self.directory_sync.list_directories() assert response.status_code == 200 assert response.response_dict == mock_directories + + def test_delete_directory(self, mock_directories, mock_request_method): + mock_response = Response() + mock_response.status_code = 202 + mock_request_method("delete", mock_response, 202) + response = self.directory_sync.delete_directory(directory="directory_id") + assert response.status_code == 202 diff --git a/tests/test_sso.py b/tests/test_sso.py index 32758198..4e135320 100644 --- a/tests/test_sso.py +++ b/tests/test_sso.py @@ -238,7 +238,7 @@ def test_list_connections( def test_delete_connection(self, setup_with_client_id, mock_request_method): mock_response = Response() - mock_response.status_code = 200 - mock_request_method("delete", mock_response, 200) + mock_response.status_code = 204 + mock_request_method("delete", mock_response, 204) response = self.sso.delete_connection(connection="connection_id") - assert response.status_code == 200 + assert response.status_code == 204 diff --git a/workos/directory_sync.py b/workos/directory_sync.py index 958b8cb0..1cb2484e 100644 --- a/workos/directory_sync.py +++ b/workos/directory_sync.py @@ -1,5 +1,9 @@ import workos -from workos.utils.request import RequestHelper, REQUEST_METHOD_GET +from workos.utils.request import ( + RequestHelper, + REQUEST_METHOD_DELETE, + REQUEST_METHOD_GET, +) from workos.utils.validation import DIRECTORY_SYNC_MODULE, validate_settings RESPONSE_LIMIT = 10 @@ -134,3 +138,18 @@ def list_directories( params=params, token=workos.api_key, ) + + def delete_directory(self, directory): + """Delete one existing Directory. + + Args: + directory (str): The ID of the directory to be deleted. (Required) + + Returns: + dict: Directories response from WorkOS. + """ + return self.request_helper.request( + "directories/{directory}".format(directory=directory), + method=REQUEST_METHOD_DELETE, + token=workos.api_key, + )