spec/helpers/geozones_helper_spec.rb
require 'rails_helper'
describe GeozonesHelper do
describe "#geozones_name" do
let(:geozone) { create :geozone }
it "returns geozone name if present" do
spending_proposal = create(:spending_proposal, geozone: geozone)
expect(geozone_name(spending_proposal)).to eq geozone.name
end
# TODO i18n : broken because of test locale change
xit "returns default string for no geozone if geozone is blank" do
spending_proposal = create(:spending_proposal, geozone: nil)
expect(geozone_name(spending_proposal)).to eq "All city"
end
end
describe "#geozone_select_options" do
it "returns array of ids and names ordered by name" do
g1 = create(:geozone, name: "AAA")
g3 = create(:geozone, name: "CCC")
g2 = create(:geozone, name: "BBB")
select_options = geozone_select_options
expect(select_options.size).to eq 3
expect(select_options.first).to eq [g1.name, g1.id]
expect(select_options[1]).to eq [g2.name, g2.id]
expect(select_options.last).to eq [g3.name, g3.id]
end
end
describe "#geozone_name_from_id" do
it "returns geozone name if present" do
g1 = create(:geozone, name: "AAA")
g2 = create(:geozone, name: "BBB")
expect(geozone_name_from_id(g1.id)).to eq "AAA"
expect(geozone_name_from_id(g2.id)).to eq "BBB"
end
# TODO i18n : broken because of test locale change
xit "returns default string for no geozone if geozone is blank" do
expect(geozone_name_from_id(nil)).to eq "All city"
end
end
end