Skip to content

Commit

Permalink
Merge pull request #609 from AyuntamientoMadrid/census_document_number
Browse files Browse the repository at this point in the history
makes the user document number match the census api
  • Loading branch information
xuanxu committed Feb 12, 2017
2 parents e225d87 + 7616048 commit 5dd1774
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 0 deletions.
2 changes: 2 additions & 0 deletions app/models/verification/residence.rb
Expand Up @@ -29,6 +29,8 @@ def initialize(attrs={})
def save
return false unless valid?

self.document_number = @census_api_response.document_number

user.take_votes_if_erased_document(document_number, document_type)

user.update(document_number: document_number,
Expand Down
4 changes: 4 additions & 0 deletions lib/census_api.rb
Expand Up @@ -72,6 +72,10 @@ def name
"#{data[:datos_habitante][:item][:nombre]} #{data[:datos_habitante][:item][:apellido1]}"
end

def document_number
str = data[:datos_habitante][:item][:identificador_documento]
end

private
def extract_date(year, month, day)
if day.present? && month.present? && year.present?
Expand Down
19 changes: 19 additions & 0 deletions spec/features/verification/residence_spec.rb
Expand Up @@ -21,6 +21,25 @@
expect(page).to have_content 'Residence verified'
end

scenario 'User document matches census API document' do
user = create(:user)
login_as(user)

visit account_path
click_link 'Verify my account'

fill_in 'residence_document_number', with: "000012345678Z"
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 have_content 'Residence verified'
expect(user.reload.document_number).to eq("12345678Z")

end

scenario 'Initialize the redeemable code with the user redeemable code' do
user = create(:user, redeemable_code: 'abcde')
login_as(user)
Expand Down
9 changes: 9 additions & 0 deletions spec/models/residence_spec.rb
Expand Up @@ -112,6 +112,15 @@
expect(user).to be_level_three_verified
end

it "updates the document number with the Census API number" do
user = create(:user)
residence.user = user
residence.document_number = '00012345678Z'
residence.save
expect(residence.document_number).to eq('12345678Z')
expect(user.reload.document_number).to eq('12345678Z')
end

end

describe "tries" do
Expand Down

0 comments on commit 5dd1774

Please sign in to comment.