Fix recoverable tests.
This commit is contained in:
parent
16c39a9f17
commit
e01dccaefb
|
@ -9,9 +9,7 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
|
|
||||||
def request_forgot_password(&block)
|
def request_forgot_password(&block)
|
||||||
visit_new_password_path
|
visit_new_password_path
|
||||||
|
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template 'passwords/new'
|
|
||||||
assert_not warden.authenticated?(:user)
|
assert_not warden.authenticated?(:user)
|
||||||
|
|
||||||
fill_in 'email', :with => 'user@test.com'
|
fill_in 'email', :with => 'user@test.com'
|
||||||
|
@ -19,15 +17,12 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
click_button 'Send me reset password instructions'
|
click_button 'Send me reset password instructions'
|
||||||
end
|
end
|
||||||
|
|
||||||
def reset_password(options={}, &block)
|
def reset_password(options={}, &block)
|
||||||
unless options[:visit] == false
|
visit edit_user_password_path(:reset_password_token => options[:reset_password_token]) unless options[:visit] == false
|
||||||
visit edit_user_password_path(:reset_password_token => options[:reset_password_token])
|
|
||||||
end
|
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template 'passwords/edit'
|
|
||||||
|
|
||||||
fill_in 'Password', :with => '987654321'
|
fill_in 'New password', :with => '987654321'
|
||||||
fill_in 'Password confirmation', :with => '987654321'
|
fill_in 'Confirm new password', :with => '987654321'
|
||||||
yield if block_given?
|
yield if block_given?
|
||||||
click_button 'Change my password'
|
click_button 'Change my password'
|
||||||
end
|
end
|
||||||
|
@ -46,7 +41,7 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
create_user
|
create_user
|
||||||
request_forgot_password
|
request_forgot_password
|
||||||
|
|
||||||
assert_template 'sessions/new'
|
assert_current_url '/users/sign_in'
|
||||||
assert_contain 'You will receive an email with instructions about how to reset your password in a few minutes.'
|
assert_contain 'You will receive an email with instructions about how to reset your password in a few minutes.'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -56,16 +51,14 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template 'passwords/new'
|
assert_current_url '/users/password'
|
||||||
assert_have_selector 'input[type=text][value=\'invalid.test@test.com\']'
|
assert_have_selector "input[type=email][value='invalid.test@test.com']"
|
||||||
assert_contain 'not found'
|
assert_contain 'not found'
|
||||||
end
|
end
|
||||||
|
|
||||||
test 'authenticated user should not be able to visit edit password page' do
|
test 'authenticated user should not be able to visit edit password page' do
|
||||||
sign_in_as_user
|
sign_in_as_user
|
||||||
|
|
||||||
get edit_user_password_path
|
get edit_user_password_path
|
||||||
|
|
||||||
assert_response :redirect
|
assert_response :redirect
|
||||||
assert_redirected_to root_path
|
assert_redirected_to root_path
|
||||||
assert warden.authenticated?(:user)
|
assert warden.authenticated?(:user)
|
||||||
|
@ -76,7 +69,7 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
reset_password :reset_password_token => 'invalid_reset_password'
|
reset_password :reset_password_token => 'invalid_reset_password'
|
||||||
|
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template 'passwords/edit'
|
assert_current_url '/users/password'
|
||||||
assert_have_selector '#error_explanation'
|
assert_have_selector '#error_explanation'
|
||||||
assert_contain /Reset password token(.*)invalid/
|
assert_contain /Reset password token(.*)invalid/
|
||||||
assert_not user.reload.valid_password?('987654321')
|
assert_not user.reload.valid_password?('987654321')
|
||||||
|
@ -86,11 +79,11 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
user = create_user
|
user = create_user
|
||||||
request_forgot_password
|
request_forgot_password
|
||||||
reset_password :reset_password_token => user.reload.reset_password_token do
|
reset_password :reset_password_token => user.reload.reset_password_token do
|
||||||
fill_in 'Password confirmation', :with => 'other_password'
|
fill_in 'Confirm new password', :with => 'other_password'
|
||||||
end
|
end
|
||||||
|
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template 'passwords/edit'
|
assert_current_url '/users/password'
|
||||||
assert_have_selector '#error_explanation'
|
assert_have_selector '#error_explanation'
|
||||||
assert_contain 'Password doesn\'t match confirmation'
|
assert_contain 'Password doesn\'t match confirmation'
|
||||||
assert_not user.reload.valid_password?('987654321')
|
assert_not user.reload.valid_password?('987654321')
|
||||||
|
@ -101,7 +94,7 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
request_forgot_password
|
request_forgot_password
|
||||||
reset_password :reset_password_token => user.reload.reset_password_token
|
reset_password :reset_password_token => user.reload.reset_password_token
|
||||||
|
|
||||||
assert_template 'home/index'
|
assert_current_url '/'
|
||||||
assert_contain 'Your password was changed successfully.'
|
assert_contain 'Your password was changed successfully.'
|
||||||
assert user.reload.valid_password?('987654321')
|
assert user.reload.valid_password?('987654321')
|
||||||
end
|
end
|
||||||
|
@ -110,7 +103,7 @@ class PasswordTest < ActionController::IntegrationTest
|
||||||
user = create_user
|
user = create_user
|
||||||
request_forgot_password
|
request_forgot_password
|
||||||
reset_password :reset_password_token => user.reload.reset_password_token do
|
reset_password :reset_password_token => user.reload.reset_password_token do
|
||||||
fill_in 'Password confirmation', :with => 'other_password'
|
fill_in 'Confirm new password', :with => 'other_password'
|
||||||
end
|
end
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_have_selector '#error_explanation'
|
assert_have_selector '#error_explanation'
|
||||||
|
|
Loading…
Reference in New Issue