diff --git a/lib/geocoder/lookups/esri.rb b/lib/geocoder/lookups/esri.rb index a8afb0a210a862e78dba8e75cfa043b9de2a02f2..c634f1a955fe7e41e2e5d8062f6f638b0e3764d6 100644 --- a/lib/geocoder/lookups/esri.rb +++ b/lib/geocoder/lookups/esri.rb @@ -44,6 +44,7 @@ module Geocoder::Lookup end params[:token] = token params[:forStorage] = configuration[:for_storage] if configuration[:for_storage] + params[:sourceCountry] = configuration[:source_country] if configuration[:source_country] params.merge(super) end diff --git a/test/unit/lookups/esri_test.rb b/test/unit/lookups/esri_test.rb index bd6486fa80899d64891d239324de6285bcf32ab3..a14ac8a59ea66246ebafbe70135e0f0269c9745c 100644 --- a/test/unit/lookups/esri_test.rb +++ b/test/unit/lookups/esri_test.rb @@ -16,6 +16,14 @@ class EsriTest < GeocoderTestCase res end + def test_query_for_geocode_with_source_country + Geocoder.configure(esri: {source_country: 'USA'}) + query = Geocoder::Query.new("Bluffton, SC") + lookup = Geocoder::Lookup.get(:esri) + url = lookup.query_url(query) + assert_match /sourceCountry=USA/, url + end + def test_query_for_geocode_with_token_and_for_storage token = Geocoder::EsriToken.new('xxxxx', Time.now + 1.day) Geocoder.configure(esri: {token: token, for_storage: true})