@@ -4,11 +4,10 @@ class PasswordResets < ActionDispatch::IntegrationTest
4
4
5
5
def setup
6
6
ActionMailer ::Base . deliveries . clear
7
- @user = users ( :michael )
8
7
end
9
8
end
10
9
11
- class PasswordResetsTest < PasswordResets
10
+ class ForgotPasswordFormTest < PasswordResets
12
11
13
12
test "password reset path" do
14
13
get new_password_reset_path
@@ -18,81 +17,82 @@ class PasswordResetsTest < PasswordResets
18
17
19
18
test "reset path with invalid email" do
20
19
post password_resets_path , params : { password_reset : { email : "" } }
21
- assert_not flash . empty?
22
20
assert_response :unprocessable_entity
21
+ assert_not flash . empty?
23
22
assert_template 'password_resets/new'
24
23
end
25
24
end
26
25
27
- class PasswordForm < PasswordResets
26
+ class PasswordResetForm < PasswordResets
28
27
29
28
def setup
30
29
super
30
+ @user = users ( :michael )
31
31
post password_resets_path ,
32
32
params : { password_reset : { email : @user . email } }
33
- @actual_user = assigns ( :user )
33
+ @reset_user = assigns ( :user )
34
34
end
35
35
end
36
36
37
- class PasswordFormTest < PasswordForm
37
+ class PasswordFormTest < PasswordResetForm
38
38
39
39
test "reset with valid email" do
40
- assert_not_equal @user . reset_digest , @user . reload . reset_digest
40
+ assert_not_equal @user . reset_digest , @reset_user . reset_digest
41
41
assert_equal 1 , ActionMailer ::Base . deliveries . size
42
42
assert_not flash . empty?
43
43
assert_redirected_to root_url
44
44
end
45
45
46
46
test "reset with wrong email" do
47
- get edit_password_reset_path ( @actual_user . reset_token , email : "" )
47
+ get edit_password_reset_path ( @reset_user . reset_token , email : "" )
48
48
assert_redirected_to root_url
49
49
end
50
50
51
51
test "reset with inactive user" do
52
- @actual_user . toggle! ( :activated )
53
- get edit_password_reset_path ( @actual_user . reset_token ,
54
- email : @actual_user . email )
52
+ @reset_user . toggle! ( :activated )
53
+ get edit_password_reset_path ( @reset_user . reset_token ,
54
+ email : @reset_user . email )
55
55
assert_redirected_to root_url
56
56
end
57
57
58
58
test "reset with right email but wrong token" do
59
- get edit_password_reset_path ( 'wrong token' , email : @actual_user . email )
59
+ get edit_password_reset_path ( 'wrong token' , email : @reset_user . email )
60
60
assert_redirected_to root_url
61
61
end
62
62
63
63
test "reset with right email and right token" do
64
- get edit_password_reset_path ( @actual_user . reset_token ,
65
- email : @actual_user . email )
64
+ get edit_password_reset_path ( @reset_user . reset_token ,
65
+ email : @reset_user . email )
66
66
assert_template 'password_resets/edit'
67
- assert_select "input[name=email][type=hidden][value=?]" , @actual_user . email
67
+ assert_select "input[name=email][type=hidden][value=?]" , @reset_user . email
68
68
end
69
69
end
70
70
71
- class PasswordUpdateTest < PasswordForm
71
+ class PasswordUpdateTest < PasswordResetForm
72
72
73
73
test "update with invalid password and confirmation" do
74
- patch password_reset_path ( @actual_user . reset_token ) ,
75
- params : { email : @actual_user . email ,
74
+ patch password_reset_path ( @reset_user . reset_token ) ,
75
+ params : { email : @reset_user . email ,
76
76
user : { password : "foobaz" ,
77
77
password_confirmation : "barquux" } }
78
78
assert_select 'div#error_explanation'
79
79
end
80
80
81
81
test "update with empty password" do
82
- patch password_reset_path ( @actual_user . reset_token ) ,
83
- params : { email : @actual_user . email ,
82
+ patch password_reset_path ( @reset_user . reset_token ) ,
83
+ params : { email : @reset_user . email ,
84
84
user : { password : "" ,
85
85
password_confirmation : "" } }
86
86
assert_select 'div#error_explanation'
87
87
end
88
88
89
89
test "update with valid password and confirmation" do
90
- patch password_reset_path ( @actual_user . reset_token ) ,
91
- params : { email : @actual_user . email ,
90
+ patch password_reset_path ( @reset_user . reset_token ) ,
91
+ params : { email : @reset_user . email ,
92
92
user : { password : "foobaz" ,
93
93
password_confirmation : "foobaz" } }
94
94
assert is_logged_in?
95
95
assert_not flash . empty?
96
- assert_redirected_to @actual_user
96
+ assert_redirected_to @reset_user
97
97
end
98
98
end
0 commit comments