35 lines
967 B
Ruby
35 lines
967 B
Ruby
require "test_helper"
|
|
|
|
class Identity::EmailVerificationsControllerTest < ActionDispatch::IntegrationTest
|
|
setup do
|
|
@user = sign_in_as(users(:lazaro_nixon))
|
|
@user.update! verified: false
|
|
end
|
|
|
|
test "should send a verification email" do
|
|
assert_enqueued_email_with UserMailer, :email_verification, params: { user: @user } do
|
|
post identity_email_verification_url
|
|
end
|
|
|
|
assert_redirected_to root_url
|
|
end
|
|
|
|
test "should verify email" do
|
|
sid = @user.generate_token_for(:email_verification)
|
|
|
|
get identity_email_verification_url(sid: sid, email: @user.email)
|
|
assert_redirected_to root_url
|
|
end
|
|
|
|
test "should not verify email with expired token" do
|
|
sid = @user.generate_token_for(:email_verification)
|
|
|
|
travel 3.days
|
|
|
|
get identity_email_verification_url(sid: sid, email: @user.email)
|
|
|
|
assert_redirected_to edit_identity_email_url
|
|
assert_equal "That email verification link is invalid", flash[:alert]
|
|
end
|
|
end
|