Browse Source

Merge 38c8bc187c into 3124107db8

pull/3292/merge
Samuel Young 3 days ago committed by GitHub
parent
commit
44aff87148
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      app/frontend/controllers/numeric_question_controller.js
  2. 9
      spec/features/form/progressive_total_field_spec.rb

2
app/frontend/controllers/numeric_question_controller.js

@ -11,7 +11,7 @@ export default class extends Controller {
calculateFields () {
const affectedField = this.element.dataset.target
const fieldsToAdd = JSON.parse(this.element.dataset.calculated).map(x => `lettings-log-${x.replaceAll('_', '-')}-field`)
const valuesToAdd = fieldsToAdd.map(x => getFieldValue(x)).filter(x => x)
const valuesToAdd = fieldsToAdd.map(x => getFieldValue(x)).filter(x => x && !isNaN(parseFloat(x)))
const newValue = valuesToAdd.map(x => parseFloat(x)).reduce((a, b) => a + b, 0).toFixed(2)
const elementToUpdate = document.getElementById(affectedField)
elementToUpdate.value = newValue

9
spec/features/form/progressive_total_field_spec.rb

@ -58,4 +58,13 @@ RSpec.describe "Accessible Autocomplete" do
fill_in("lettings-log-supcharg-field-error", with: 50)
expect(find("#lettings-log-tcharge-field").value).to eq("550.00")
end
it "does not show 'NaN' if one of the inputs is not a number", :js do
visit("/lettings-logs/#{lettings_log.id}/rent")
expect(page).to have_selector("#tcharge_div")
fill_in("lettings-log-brent-field", with: 5)
expect(find("#lettings-log-tcharge-field").value).to eq("5.00")
fill_in("lettings-log-pscharge-field", with: "something else")
expect(find("#lettings-log-tcharge-field").value).to eq("5.00")
end
end

Loading…
Cancel
Save