adds verification status methods to user

This commit is contained in:
Juanjo Bazán
2015-09-11 14:39:43 +02:00
parent 7b672d3ecb
commit 8bf71e818b
2 changed files with 48 additions and 0 deletions

View File

@@ -1,5 +1,17 @@
module Verification module Verification
def verification_email_sent?
email_verification_token.present?
end
def verification_sms_sent?
unconfirmed_phone.present? && sms_confirmation_code.present?
end
def verification_letter_sent?
letter_requested_at.present? && letter_verification_code.present?
end
def residence_verified? def residence_verified?
residence_verified_at.present? residence_verified_at.present?
end end

View File

@@ -304,6 +304,42 @@ describe User do
user = create(:user, verified_at: Time.now, confirmed_phone: "123456789", residence_verified_at: Time.now) user = create(:user, verified_at: Time.now, confirmed_phone: "123456789", residence_verified_at: Time.now)
expect(user.unverified?).to eq(false) expect(user.unverified?).to eq(false)
end end
it "verification_email_sent? is true only if user has email_verification_token" do
user = create(:user, email_verification_token: "xxxxxxx")
expect(user.verification_email_sent?).to eq(true)
user = create(:user, email_verification_token: nil)
expect(user.verification_email_sent?).to eq(false)
end
it "verification_sms_sent? is true only if user has unconfirmed_phone and sms_confirmation_code" do
user = create(:user, unconfirmed_phone: "666666666", sms_confirmation_code: "666")
expect(user.verification_sms_sent?).to eq(true)
user = create(:user, unconfirmed_phone: nil, sms_confirmation_code: "666")
expect(user.verification_sms_sent?).to eq(false)
user = create(:user, unconfirmed_phone: "666666666", sms_confirmation_code: nil)
expect(user.verification_sms_sent?).to eq(false)
user = create(:user, unconfirmed_phone: nil, sms_confirmation_code: nil)
expect(user.verification_sms_sent?).to eq(false)
end
it "verification_letter_sent? is true only if user has letter_requested_at and letter_verification_code" do
user = create(:user, letter_requested_at: Time.now, letter_verification_code: "666")
expect(user.verification_letter_sent?).to eq(true)
user = create(:user, letter_requested_at: nil, letter_verification_code: "666")
expect(user.verification_letter_sent?).to eq(false)
user = create(:user, letter_requested_at: Time.now, letter_verification_code: nil)
expect(user.verification_letter_sent?).to eq(false)
user = create(:user, letter_requested_at: nil, letter_verification_code: nil)
expect(user.verification_letter_sent?).to eq(false)
end
end end
describe "cache" do describe "cache" do