Browse Source

test: update

pull/1592/head
natdeanlewissoftwire 3 years ago
parent
commit
5ed55e6811
  1. 33
      app/services/bulk_upload/sales/year2022/row_parser.rb
  2. 23
      spec/services/bulk_upload/sales/year2022/row_parser_spec.rb

33
app/services/bulk_upload/sales/year2022/row_parser.rb

@ -704,22 +704,23 @@ private
end end
def ethnic_group_from_ethnic def ethnic_group_from_ethnic
return 17 if buyer_not_interviewed? if field_30.blank?
return nil if field_30.blank? buyer_not_interviewed? ? 17 : nil
else
case field_30 case field_30
when 1, 2, 3, 18 when 1, 2, 3, 18
0 0
when 4, 5, 6, 7 when 4, 5, 6, 7
1 1
when 8, 9, 10, 11, 15 when 8, 9, 10, 11, 15
2 2
when 12, 13, 14 when 12, 13, 14
3 3
when 16, 19 when 16, 19
4 4
when 17 when 17
17 17
end
end end
end end

23
spec/services/bulk_upload/sales/year2022/row_parser_spec.rb

@ -523,13 +523,14 @@ RSpec.describe BulkUpload::Sales::Year2022::RowParser do
end end
describe "inferences" do describe "inferences" do
context "when buyer not interviewed" do context "when buyer not interviewed and optional values nil" do
let(:attributes) { valid_attributes.merge(field_6: "1", field_24: nil, field_30: nil, field_31: nil, field_32: nil, field_34: nil, field_36: nil, field_37: nil, field_39: nil, field_48: nil, field_49: nil) } let(:attributes) { valid_attributes.merge(field_6: "1", field_24: nil, field_30: nil, field_31: nil, field_32: nil, field_34: nil, field_36: nil, field_37: nil, field_39: nil, field_48: nil, field_49: nil) }
it "infers correctly" do it "infers correctly" do
log = parser.log log = parser.log
expect(log["noint"]).to eq(1) expect(log["noint"]).to eq(1)
expect(log["ecstat1"]).to eq(0) expect(log["ecstat1"]).to eq(0)
expect(log["ethnic"]).to eq(nil)
expect(log["ethnic_group"]).to eq(17) expect(log["ethnic_group"]).to eq(17)
expect(log["national"]).to eq(13) expect(log["national"]).to eq(13)
expect(log["income1nk"]).to eq(1) expect(log["income1nk"]).to eq(1)
@ -541,5 +542,25 @@ RSpec.describe BulkUpload::Sales::Year2022::RowParser do
expect(log["wheel"]).to eq(3) expect(log["wheel"]).to eq(3)
end end
end end
context "when buyer not interviewed and optional values present" do
let(:attributes) { valid_attributes.merge(field_6: "1", field_24: "1", field_30: "1", field_31: "1", field_32: "1", field_34: "1", field_36: "1", field_37: "1", field_39: "1", field_48: "1", field_49: "1") }
it "does not override variables correctly" do
log = parser.log
expect(log["noint"]).to eq(1)
expect(log["ecstat1"]).to eq(1)
expect(log["ethnic"]).to eq(0)
expect(log["ethnic_group"]).to eq(17)
expect(log["national"]).to eq(1)
expect(log["income1nk"]).to eq(0)
expect(log["inc1mort"]).to eq(1)
expect(log["savingsnk"]).to eq(0)
expect(log["prevown"]).to eq(1)
expect(log["prevten"]).to eq(1)
expect(log["disabled"]).to eq(1)
expect(log["wheel"]).to eq(1)
end
end
end end
end end

Loading…
Cancel
Save