diff --git a/app/models/verification/residence.rb b/app/models/verification/residence.rb index d7ef5db52..96a36e5cd 100644 --- a/app/models/verification/residence.rb +++ b/app/models/verification/residence.rb @@ -40,7 +40,7 @@ class Verification::Residence end def document_number_uniqueness - errors.add(:document_number, I18n.t('errors.messages.taken')) if User.active.where(document_number: document_number).any? + errors.add(:document_number, I18n.t('errors.messages.taken')) if User.where(document_number: document_number).any? end def store_failed_attempt diff --git a/spec/features/verification/residence_spec.rb b/spec/features/verification/residence_spec.rb index 88d1579a9..cdf33dfab 100644 --- a/spec/features/verification/residence_spec.rb +++ b/spec/features/verification/residence_spec.rb @@ -102,4 +102,24 @@ feature 'Residence' do expect(page).to have_content "You have reached the maximum number of attempts. Please try again later." expect(current_path).to eq(account_path) end + + scenario 'Error when trying to verify a deregistered account' do + create(:user, document_number: '12345678Z', document_type: '1', erased_at: Time.now) + + login_as(create(:user)) + + visit account_path + click_link 'Verify my account' + + fill_in 'residence_document_number', with: "12345678Z" + select 'DNI', from: 'residence_document_type' + select_date '31-December-1980', from: 'residence_date_of_birth' + fill_in 'residence_postal_code', with: '28013' + check 'residence_terms_of_service' + + click_button 'Verify residence' + + expect(page).to_not have_content 'Residence verified' + expect(page).to have_content 'has already been taken' + end end