File tree Expand file tree Collapse file tree 1 file changed +22
-19
lines changed Expand file tree Collapse file tree 1 file changed +22
-19
lines changed Original file line number Diff line number Diff line change 1
1
require 'rails_helper'
2
2
3
- RSpec . feature 'Switch User' do
4
- let ( :user_attributes ) do
5
-
6
- end
7
- let ( :user ) do
8
- User . new ( user_attributes ) { |u | u . save ( validate : false ) }
9
- end
10
-
11
- before do
12
- login_as user
13
- end
3
+ RSpec . feature 'Switch User' , :clean do
4
+ let ( :user ) { FactoryBot . create ( :user ) }
5
+ let ( :admin_user ) { FactoryBot . create ( :admin ) }
14
6
15
- scenario 'Non-admin user is not allowed to see switch user form' do
16
- visit '/users/sessions/log_in_as'
17
- expect ( page ) . to have_no_selector ( 'select#switch_user_identifier' )
7
+ context 'Non-admin user' do
8
+ before do
9
+ login_as user
10
+ end
11
+ scenario 'is not allowed to see switch user form' do
12
+ visit '/users/sessions/log_in_as'
13
+ expect ( page ) . to have_no_selector ( 'select#switch_user_identifier' )
14
+ logout
15
+ end
18
16
end
19
17
20
- scenario 'Admin user is allowed to see switch user form' do
21
- admin = Role . where ( name : 'admin' ) . first_or_create
22
- admin . users << user
23
- visit '/users/sessions/log_in_as'
24
- expect ( page ) . to have_css ( 'select#switch_user_identifier' )
18
+ context 'Admin user' do
19
+ before do
20
+ login_as admin_user
21
+ allow ( admin_user ) . to receive ( :admin? ) . and_return ( true )
22
+ end
23
+ scenario 'is allowed to see switch user form' do
24
+ visit '/users/sessions/log_in_as'
25
+ expect ( page ) . to have_css ( 'select#switch_user_identifier' )
26
+ logout
27
+ end
25
28
end
26
29
end
You can’t perform that action at this time.
0 commit comments