Skip to content

Commit e55debf

Browse files
authored
Update presence check for geolocation in autocomplete pro client (#51)
1 parent 66ce5b4 commit e55debf

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

lib/smartystreets_ruby_sdk/us_autocomplete_pro/client.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def build_request(lookup)
4444
add_parameter(request, 'prefer_zip_codes', build_filter_string(lookup.prefer_zip_codes))
4545
add_parameter(request, 'prefer_ratio', lookup.prefer_ratio.to_s)
4646
add_parameter(request, 'source', lookup.source)
47-
if lookup.prefer_zip_codes or lookup.zip_filter
47+
if lookup.prefer_zip_codes.any? || lookup.zip_filter.any?
4848
request.parameters['prefer_geolocation'] = GeolocationType::NONE
4949
else
5050
add_parameter(request, 'prefer_geolocation', lookup.prefer_geolocation)

test/smartystreets_ruby_sdk/us_autocomplete_pro/test_autocomplete_pro_client.rb

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,4 +88,22 @@ def test_rejects_blank_lookup
8888
client.send(Lookup.new)
8989
end
9090
end
91-
end
91+
92+
def test_sets_geolocation_as_city_if_no_city_and_zip_filters
93+
sender = RequestCapturingSender.new
94+
serializer = FakeSerializer.new({})
95+
client = Client.new(sender, serializer)
96+
97+
lookup = Lookup.new('1')
98+
lookup.max_results = 2
99+
lookup.source = "all"
100+
lookup.prefer_geolocation = SmartyStreets::USAutocompletePro::GeolocationType::CITY
101+
102+
client.send(lookup)
103+
104+
assert_equal('1', sender.request.parameters['search'])
105+
assert_equal('2', sender.request.parameters['max_results'])
106+
assert_equal('city', sender.request.parameters['prefer_geolocation'])
107+
assert_equal('all', sender.request.parameters['source'])
108+
end
109+
end

0 commit comments

Comments
 (0)