Skip to content

Commit a5c5870

Browse files
authored
Merge pull request #18 from authsignal/AUT-2329-DeleteUser
[AUT-2329] - Delete User
2 parents 5c0e2b7 + e4f0e00 commit a5c5870

File tree

5 files changed

+29
-2
lines changed

5 files changed

+29
-2
lines changed

Gemfile.lock

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PATH
22
remote: .
33
specs:
4-
authsignal-ruby (2.1.1)
4+
authsignal-ruby (2.1.2)
55
httparty (~> 0.21.0)
66

77
GEM

lib/authsignal.rb

+5
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ def update_user(user_id:, user:)
3131
response.transform_keys { |key| underscore(key) }.transform_keys(&:to_sym)
3232
end
3333

34+
def delete_user(user_id:)
35+
response = Client.new.delete_user(user_id: user_id)
36+
response.transform_keys { |key| underscore(key) }.transform_keys(&:to_sym)
37+
end
38+
3439
def get_action(user_id:, action:, idempotency_key:)
3540
response = Client.new.get_action(user_id, action, idempotency_key)
3641
response.transform_keys { |key| underscore(key) }.transform_keys(&:to_sym)

lib/authsignal/client.rb

+8
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ def update_user(user_id:, user:)
4848
post("/users/#{ERB::Util.url_encode(user_id)}", body: JSON.generate(user))
4949
end
5050

51+
def delete_user(user_id:)
52+
delete("/users/#{ERB::Util.url_encode(user_id)}")
53+
end
54+
5155
def validate_challenge(user_id: nil, token:)
5256
path = "/validate"
5357

@@ -76,6 +80,10 @@ def post(path, query: {}, body: {})
7680
self.class.post(path, headers: @headers, body: body, basic_auth: {username: @api_key})
7781
end
7882

83+
def delete(path, query: {}, body: {})
84+
self.class.delete(path, headers: @headers, body: body, basic_auth: {username: @api_key})
85+
end
86+
7987
private
8088

8189
def version

lib/authsignal/version.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# frozen_string_literal: true
22

33
module Authsignal
4-
VERSION = "2.1.1"
4+
VERSION = "2.1.2"
55
end

spec/authsignal/authsignal_spec.rb

+14
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,20 @@
4141
end
4242
end
4343

44+
describe "delete_user" do
45+
it do
46+
stub_request(:delete, "http://localhost:8080/users/1")
47+
.with(basic_auth: ['secret', ''])
48+
.to_return(body: {success: true}.to_json,
49+
status: 200,
50+
headers: {'Content-Type' => 'application/json'})
51+
52+
response = Authsignal.delete_user(user_id: 1)
53+
54+
expect(response[:success]).to eq(true)
55+
end
56+
end
57+
4458
describe "enroll_verified_authenticator" do
4559
it do
4660
payload = {

0 commit comments

Comments
 (0)