File tree 2 files changed +16
-1
lines changed
2 files changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -48,7 +48,7 @@ def logout_path
48
48
end
49
49
50
50
def logout_method
51
- return Devise . sign_out_via if defined? ( Devise )
51
+ return [ Devise . sign_out_via ] . flatten . first if defined? ( Devise )
52
52
:delete
53
53
end
54
54
Original file line number Diff line number Diff line change @@ -110,6 +110,21 @@ def initialize(_user)
110
110
end
111
111
end
112
112
113
+ describe '#logout_method' do
114
+ it 'defaults to :delete when Devise is not defined' do
115
+ allow ( Object ) . to receive ( :defined? ) . with ( Devise ) . and_return ( false )
116
+
117
+ expect ( helper . logout_method ) . to eq ( :delete )
118
+ end
119
+
120
+ it 'uses first sign out method from Devise when it is defined' do
121
+ allow ( Object ) . to receive ( :defined? ) . with ( Devise ) . and_return ( true )
122
+
123
+ expect ( Devise ) . to receive ( :sign_out_via ) . and_return ( [ :whatever_defined_on_devise , :something_ignored ] )
124
+ expect ( helper . logout_method ) . to eq ( :whatever_defined_on_devise )
125
+ end
126
+ end
127
+
113
128
describe '#wording_for' do
114
129
it 'gives correct wording even if action is not visible' do
115
130
RailsAdmin . config do |config |
You can’t perform that action at this time.
0 commit comments