adds geozone helper to map ids and names
This commit is contained in:
@@ -8,4 +8,9 @@ module GeozonesHelper
|
||||
Geozone.all.order(name: :asc).collect { |g| [ g.name, g.id ] }
|
||||
end
|
||||
|
||||
def geozone_name_from_id(g_id)
|
||||
@all_geozones ||= Geozone.all.collect{ |g| [ g.id, g.name ] }.to_h
|
||||
@all_geozones[g_id] || t("geozones.none")
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -31,4 +31,19 @@ describe GeozonesHelper do
|
||||
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
|
||||
|
||||
it "returns default string for no geozone if geozone is blank" do
|
||||
expect(geozone_name_from_id(nil)).to eq "All city"
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user