138 lines
3.7 KiB
Ruby
138 lines
3.7 KiB
Ruby
require "rails_helper"
|
|
|
|
describe "Verified users" do
|
|
|
|
scenario "Verified emails" do
|
|
user = create(:user,
|
|
residence_verified_at: Time.current,
|
|
document_number: "12345678Z")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z",
|
|
email: "rock@example.com")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z",
|
|
email: "roll@example.com")
|
|
|
|
create(:verified_user,
|
|
document_number: "99999999R",
|
|
email: "another@example.com")
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
expect(page).to have_content "roc*@example.com"
|
|
expect(page).to have_content "rol*@example.com"
|
|
expect(page).not_to have_content "ano*@example.com"
|
|
end
|
|
|
|
scenario "Verified phones" do
|
|
user = create(:user,
|
|
residence_verified_at: Time.current,
|
|
document_number: "12345678Z")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z",
|
|
phone: "611111111")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z",
|
|
phone: "622222222")
|
|
|
|
create(:verified_user,
|
|
document_number: "99999999R",
|
|
phone: "633333333")
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
expect(page).to have_content "******111"
|
|
expect(page).to have_content "******222"
|
|
expect(page).not_to have_content "******333"
|
|
end
|
|
|
|
scenario "No emails or phones" do
|
|
user = create(:user,
|
|
residence_verified_at: Time.current,
|
|
document_number: "12345678Z")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z")
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
expect(page).to have_current_path(new_sms_path)
|
|
end
|
|
|
|
scenario "Select a verified email" do
|
|
user = create(:user,
|
|
residence_verified_at: Time.current,
|
|
document_number: "12345678Z")
|
|
|
|
verified_user = create(:verified_user,
|
|
document_number: "12345678Z",
|
|
email: "rock@example.com")
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
within("#verified_user_#{verified_user.id}_email") do
|
|
click_button "Send code"
|
|
end
|
|
|
|
expect(page).to have_content "We have sent a confirmation email to your account: rock@example.com"
|
|
expect(page).to have_current_path(account_path)
|
|
end
|
|
|
|
scenario "Select a verified phone" do
|
|
user = create(:user,
|
|
residence_verified_at: Time.current,
|
|
document_number: "12345678Z")
|
|
|
|
verified_user = create(:verified_user,
|
|
document_number: "12345678Z",
|
|
phone: "611111111")
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
within("#verified_user_#{verified_user.id}_phone") do
|
|
click_button "Send code"
|
|
end
|
|
|
|
expect(page).to have_content "Enter the confirmation code"
|
|
end
|
|
|
|
scenario "Continue without selecting any verified information" do
|
|
user = create(:user,
|
|
residence_verified_at: Time.current,
|
|
document_number: "12345678Z")
|
|
|
|
create(:verified_user,
|
|
document_number: "12345678Z",
|
|
phone: "611111111")
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
click_link "Use other phone"
|
|
|
|
expect(page).to have_current_path(new_sms_path)
|
|
end
|
|
|
|
scenario "No verified information" do
|
|
user = create(:user, residence_verified_at: Time.current)
|
|
|
|
login_as(user)
|
|
visit verified_user_path
|
|
|
|
expect(page).to have_current_path(new_sms_path)
|
|
end
|
|
|
|
end
|