File tree 2 files changed +32
-0
lines changed
2 files changed +32
-0
lines changed Original file line number Diff line number Diff line change @@ -23,6 +23,15 @@ def delete_session(session_id)
23
23
delete "#{ sessions_path } /#{ session_id } "
24
24
end
25
25
26
+ # Revokes a session by ID and all associated refresh tokens
27
+ # @see https://auth0.com/docs/api/management/v2/sessions/revoke-session
28
+ # @param id [string] The ID of the session to revoke
29
+ def revoke_session ( session_id )
30
+ raise Auth0 ::InvalidParameter , 'Must supply a valid session_id' if session_id . to_s . empty?
31
+
32
+ post "#{ sessions_path } /#{ session_id } /revoke"
33
+ end
34
+
26
35
private
27
36
28
37
def sessions_path
Original file line number Diff line number Diff line change 1
1
# frozen_string_literal: true
2
2
3
3
require 'spec_helper'
4
+
4
5
describe Auth0 ::Api ::V2 ::Sessions do
5
6
before :all do
6
7
dummy_instance = DummyClass . new
7
8
dummy_instance . extend ( Auth0 ::Api ::V2 ::Sessions )
8
9
@instance = dummy_instance
9
10
end
11
+
10
12
context '.session' do
11
13
it 'is expected to respond to a session method' do
12
14
expect ( @instance ) . to respond_to ( :session )
26
28
expect { @instance . session ( nil ) } . to raise_error ( 'Must supply a valid session_id' )
27
29
end
28
30
end
31
+
29
32
context '.delete_session' do
30
33
it 'is expected to respond to a delete_session method' do
31
34
expect ( @instance ) . to respond_to ( :delete_session )
45
48
expect { @instance . delete_session ( nil ) } . to raise_error ( 'Must supply a valid session_id' )
46
49
end
47
50
end
51
+
52
+ context '.revoke_session' do
53
+ it 'is expected to respond to a revoke_session method' do
54
+ expect ( @instance ) . to respond_to ( :revoke_session )
55
+ end
56
+
57
+ it 'is expected to POST to /api/v2/sessions/{id}/revoke' do
58
+ expect ( @instance ) . to receive ( :post ) . with (
59
+ '/api/v2/sessions/SESSION_ID/revoke'
60
+ )
61
+
62
+ expect do
63
+ @instance . revoke_session ( 'SESSION_ID' )
64
+ end . not_to raise_error
65
+ end
66
+
67
+ it 'is expected to raise an exception when the session ID is empty' do
68
+ expect { @instance . revoke_session ( nil ) } . to raise_error ( 'Must supply a valid session_id' )
69
+ end
70
+ end
48
71
end
You can’t perform that action at this time.
0 commit comments