Change summary
lib/area_code_repo.rb | 4 +++-
lib/geo_code.rb | 4 ++++
2 files changed, 7 insertions(+), 1 deletion(-)
Detailed changes
@@ -12,7 +12,9 @@ class AreaCodeRepo
def find(q, limit: 3)
@geo_code_repo.find(q).then { |geo|
- log.debug "AreaCodeRepo#find(#{q.inspect})"
+ log.error "AreaCodeRepo#find(#{q.inspect})" unless geo.valid?
+ next [] unless geo.valid?
+
@db.query_defer(<<~SQL, [geo.country, geo.sql_point, limit])
SELECT area_code FROM area_codes
WHERE country=$1
@@ -21,4 +21,8 @@ class GeoCode
def sql_point
"POINT(#{'%.10f' % @data['longt']} #{'%.10f' % @data['latt']})"
end
+
+ def valid?
+ @data["longt"] && @data["latt"]
+ end
end