diff --git a/test/calculations_test.rb b/test/calculations_test.rb
index 7b3687260523d882d59b33ef8a93a45f3c21c4ae..2cdaa562f9055e5053855fad10b174f0a31300dd 100644
--- a/test/calculations_test.rb
+++ b/test/calculations_test.rb
@@ -168,32 +168,28 @@ class CalculationsTest < Test::Unit::TestCase
   end
 
   def test_extract_coordinates
-    result = Geocoder::Calculations.extract_coordinates([ nil, nil ])
-    assert is_nan_coordinates?(result)
+    coords = [-23,47]
+    l = Landmark.new("Madagascar", coords[0], coords[1])
+    assert_equal coords, Geocoder::Calculations.extract_coordinates(l)
+    assert_equal coords, Geocoder::Calculations.extract_coordinates(coords)
+  end
 
-    result = Geocoder::Calculations.extract_coordinates([ 1.0 / 3, 2.0 / 3 ])
-    assert_in_delta 1.0 / 3, result.first, 1E-5
-    assert_in_delta 2.0 / 3, result.last, 1E-5
+  def test_extract_nan_coordinates
+    result = Geocoder::Calculations.extract_coordinates([ nil, nil ])
+    assert_nan_coordinates?(result)
 
     result = Geocoder::Calculations.extract_coordinates(nil)
-    assert is_nan_coordinates?(result)
+    assert_nan_coordinates?(result)
 
     result = Geocoder::Calculations.extract_coordinates('')
-    assert is_nan_coordinates?(result)
+    assert_nan_coordinates?(result)
 
     result = Geocoder::Calculations.extract_coordinates([ 'nix' ])
-    assert is_nan_coordinates?(result)
+    assert_nan_coordinates?(result)
 
     o = Object.new
     result = Geocoder::Calculations.extract_coordinates(o)
-    assert is_nan_coordinates?(result)
-
-    def o.to_coordinates
-      [ 1.0 / 3, 2.0 / 3 ]
-    end
-    result = Geocoder::Calculations.extract_coordinates(o)
-    assert_in_delta 1.0 / 3, result.first, 1E-5
-    assert_in_delta 2.0 / 3, result.last, 1E-5
+    assert_nan_coordinates?(result)
   end
 
   def test_coordinates_present
@@ -203,10 +199,10 @@ class CalculationsTest < Test::Unit::TestCase
     assert !Geocoder::Calculations.coordinates_present?(3.23, nil)
   end
 
-  def test_extract_coordinates
-    coords = [-23,47]
-    l = Landmark.new("Madagascar", coords[0], coords[1])
-    assert_equal coords, Geocoder::Calculations.extract_coordinates(l)
-    assert_equal coords, Geocoder::Calculations.extract_coordinates(coords)
+  private # ------------------------------------------------------------------
+
+  def assert_nan_coordinates?(value)
+    nan_array = [Geocoder::Calculations::NAN, Geocoder::Calculations::NAN]
+    assert_equal nan_array, value, "Expected value to be [NaN, NaN] but was #{value}"
   end
 end
diff --git a/test/test_helper.rb b/test/test_helper.rb
index 06e3272f94d2d646d565ebcc744d0ced3ed243b9..9d635a18c729e80ec9c8e873e26e2ef919477df6 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -275,12 +275,6 @@ class Test::Unit::TestCase
     }[abbrev]
   end
 
-  def is_nan_coordinates?(coordinates)
-    return false unless coordinates.respond_to? :size # Should be an array
-    return false unless coordinates.size == 2 # Should have dimension 2
-    coordinates[0].nan? && coordinates[1].nan? # Both coordinates should be NaN
-  end
-
   def set_api_key!(lookup_name)
     lookup = Geocoder::Lookup.get(lookup_name)
     if lookup.required_api_key_parts.size == 1