Skip to content

Commit a0d0caa

Browse files
committed
Admin Users Controller Tests
- added test for verifying users - changed tests for active status to verified status - added unverified method tests including the SuperAdmin ones
1 parent 4191579 commit a0d0caa

File tree

1 file changed

+38
-4
lines changed

1 file changed

+38
-4
lines changed

spec/controllers/admin/users_controller_spec.rb

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@
2828
end
2929

3030
describe '#verified_users' do
31-
it 'returns the list of active users' do
32-
users = create_list(:user, 3, status: 'active') + [user, user_with_manage_users_permission]
31+
it 'returns the list of verified users' do
32+
users = create_list(:user, 3, verified: true) + [user, user_with_manage_users_permission]
3333
get :verified
3434
expect(response).to have_http_status(:ok)
3535
response_user_ids = response.parsed_body['data'].pluck('id')
@@ -47,6 +47,24 @@
4747
end
4848
end
4949

50+
describe '#unverified_users' do
51+
it 'returns the list of unverified users' do
52+
users = create_list(:user, 3, verified: false)
53+
get :unverified
54+
expect(response).to have_http_status(:ok)
55+
response_user_ids = response.parsed_body['data'].pluck('id')
56+
expect(response_user_ids).to match_array(users.pluck(:id))
57+
end
58+
59+
it 'excludes users with a different provider' do
60+
greenlight_users = create_list(:user, 3, provider: 'greenlight', verified: false)
61+
role_with_provider_test = create(:role, provider: 'test')
62+
create(:user, provider: 'test', role: role_with_provider_test, verified: false)
63+
get :unverified
64+
expect(response.parsed_body['data'].pluck('id')).to match_array(greenlight_users.pluck(:id))
65+
end
66+
end
67+
5068
describe '#pending' do
5169
it 'returns a list of pending users' do
5270
users = create_list(:user, 3, status: 'pending')
@@ -97,14 +115,22 @@
97115
sign_in_user(super_admin)
98116
end
99117

100-
it 'returns the list of active users' do
101-
users = create_list(:user, 3, status: 'active') + [user, user_with_manage_users_permission]
118+
it 'returns the list of verified users' do
119+
users = create_list(:user, 3, verified: true) + [user, user_with_manage_users_permission]
102120
get :verified
103121
expect(response).to have_http_status(:ok)
104122
response_user_ids = response.parsed_body['data'].pluck('id')
105123
expect(response_user_ids).to match_array(users.pluck(:id))
106124
end
107125

126+
it 'returns the list of unverified users' do
127+
users = create_list(:user, 3, verified: false)
128+
get :unverified
129+
expect(response).to have_http_status(:ok)
130+
response_user_ids = response.parsed_body['data'].pluck('id')
131+
expect(response_user_ids).to match_array(users.pluck(:id))
132+
end
133+
108134
it 'returns the list of pending users' do
109135
users = create_list(:user, 3, status: 'pending')
110136
get :pending
@@ -130,6 +156,14 @@
130156
expect(user.reload.status).to eq('banned')
131157
end
132158

159+
it 'verifies an unverified user' do
160+
unverified_user = create(:user, verified: false)
161+
post :update, params: { id: unverified_user.id, user: { verified: true } }
162+
unverified_user.reload
163+
expect(response).to have_http_status(:ok)
164+
expect(unverified_user.verified).to be(true)
165+
end
166+
133167
context 'user without ManageUsers permission' do
134168
before do
135169
sign_in_user(user)

0 commit comments

Comments
 (0)