From 9e0590957967c506d05449b1edebeb2e7d4c732d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B4natas=20Santos?= Date: Fri, 25 Aug 2023 09:39:21 -0300 Subject: [PATCH] Add users.delete_user() method --- tests/test_users.py | 10 +++++++++- workos/users.py | 12 ++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/tests/test_users.py b/tests/test_users.py index 068283ff..3e68dbcd 100644 --- a/tests/test_users.py +++ b/tests/test_users.py @@ -140,7 +140,7 @@ def test_create_user(self, mock_user, mock_request_method): assert user["id"] == "user_01H7ZGXFP5C6BBQY6Z7277ZCT0" def test_get_user(self, mock_user, capture_and_mock_request): - url, request_kwargs = capture_and_mock_request("get", mock_user, 201) + url, request_kwargs = capture_and_mock_request("get", mock_user, 200) user = self.users.get_user("user_01H7ZGXFP5C6BBQY6Z7277ZCT0") @@ -187,6 +187,14 @@ def test_list_users_returns_metadata( assert dict_users["metadata"]["params"]["email"] == "marcelina@foo-corp.com" assert dict_users["metadata"]["params"]["organization"] == "foo-corp.com" + def test_delete_user(self, mock_user, capture_and_mock_request): + url, request_kwargs = capture_and_mock_request("delete", None, 200) + + user = self.users.delete_user("user_01H7ZGXFP5C6BBQY6Z7277ZCT0") + + assert url[0].endswith("users/user_01H7ZGXFP5C6BBQY6Z7277ZCT0") + assert user is None + def test_add_user_to_organization(self, capture_and_mock_request, mock_user): url, _ = capture_and_mock_request("post", mock_user, 200) diff --git a/workos/users.py b/workos/users.py index 5d4aa216..fc009b07 100644 --- a/workos/users.py +++ b/workos/users.py @@ -150,6 +150,18 @@ def list_users( return self.construct_from_response(response) + def delete_user(self, user): + """Delete an existing user. + + Args: + user (str) - User unique identifier + """ + self.request_helper.request( + USER_DETAIL_PATH.format(user), + method=REQUEST_METHOD_DELETE, + token=workos.api_key, + ) + def add_user_to_organization(self, user, organization): """Adds a User as a member of the given Organization.