From 9da61782e4ff81396f4715af00699ce3347c15f4 Mon Sep 17 00:00:00 2001
From: Alex Reisner <alex@alexreisner.com>
Date: Mon, 24 Dec 2012 10:03:50 -0500
Subject: [PATCH] Refactor fixture-selecting logic (for clarity).

---
 test/test_helper.rb | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

diff --git a/test/test_helper.rb b/test/test_helper.rb
index 2fe194c1..b3aa68f2 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -88,6 +88,9 @@ module Geocoder
         s
       end
 
+      ##
+      # Fixture to use if none match the given query.
+      #
       def default_fixture_filename
         "#{fixture_prefix}_madison_square_garden"
       end
@@ -96,20 +99,16 @@ module Geocoder
         handle
       end
 
+      def fixture_for_query(query)
+        label = query.reverse_geocode? ? "reverse" : query.text.gsub(/[ \.]/, "_")
+        filename = "#{fixture_prefix}_#{label}"
+        fixture_exists?(filename) ? filename : default_fixture_filename
+      end
+
       def make_api_request(query)
         raise TimeoutError if query.text == "timeout"
         raise SocketError if query.text == "socket_error"
-        if query.reverse_geocode?
-          filename = "#{fixture_prefix}_reverse"
-        else
-          label = query.text.gsub(/[ \.]/, "_")
-          filename = "#{fixture_prefix}_#{label}"
-        end
-        if fixture_exists?(filename)
-          read_fixture "#{filename}"
-        else
-          read_fixture default_fixture_filename
-        end
+        read_fixture fixture_for_query(query)
       end
     end
 
-- 
GitLab