File tree Expand file tree Collapse file tree 2 files changed +32
-0
lines changed Expand file tree Collapse file tree 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)
2323 delete "#{ sessions_path } /#{ session_id } "
2424 end
2525
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+
2635 private
2736
2837 def sessions_path
Original file line number Diff line number Diff line change 11# frozen_string_literal: true
22
33require 'spec_helper'
4+
45describe Auth0 ::Api ::V2 ::Sessions do
56 before :all do
67 dummy_instance = DummyClass . new
78 dummy_instance . extend ( Auth0 ::Api ::V2 ::Sessions )
89 @instance = dummy_instance
910 end
11+
1012 context '.session' do
1113 it 'is expected to respond to a session method' do
1214 expect ( @instance ) . to respond_to ( :session )
2628 expect { @instance . session ( nil ) } . to raise_error ( 'Must supply a valid session_id' )
2729 end
2830 end
31+
2932 context '.delete_session' do
3033 it 'is expected to respond to a delete_session method' do
3134 expect ( @instance ) . to respond_to ( :delete_session )
4548 expect { @instance . delete_session ( nil ) } . to raise_error ( 'Must supply a valid session_id' )
4649 end
4750 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
4871end
You can’t perform that action at this time.
0 commit comments