forked from chicago-tool-library/circulate
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathusers_controller_test.rb
86 lines (64 loc) · 1.83 KB
/
users_controller_test.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
require "test_helper"
module Admin
class UsersControllerTest < ActionDispatch::IntegrationTest
include Devise::Test::IntegrationHelpers
setup do
@user = create(:admin_user)
sign_in @user
end
test "should get index" do
create(:user)
get admin_users_url
assert_response :success
end
test "should get new" do
get new_admin_user_url
assert_response :success
end
test "should create user" do
assert_difference("User.count") do
post admin_users_url, params: {user: {email: "[email protected]", role: "staff"}}
end
assert_redirected_to admin_users_url
user = User.last
assert_equal "[email protected]", user.email
assert_equal "staff", user.role
end
test "should show user" do
user = create(:user)
get admin_user_url(user)
assert_response :success
end
test "should get edit" do
user = create(:user)
get edit_admin_user_url(user)
assert_response :success
end
test "should update user" do
user = create(:user)
patch admin_user_url(user), params: {user: {email: "[email protected]", role: "admin"}}
assert_redirected_to admin_users_url
user.reload
assert_equal "[email protected]", user.email
assert_equal "admin", user.role
end
test "should destroy user" do
user = create(:user)
assert_difference("User.count", -1) do
delete admin_user_url(user)
end
assert_redirected_to admin_users_url
end
end
class StaffUsersControllerTest < ActionDispatch::IntegrationTest
include Devise::Test::IntegrationHelpers
setup do
@user = create(:user)
sign_in @user
end
test "should get index" do
get admin_users_url
assert_redirected_to root_url
end
end
end