From 713b6c916c499a7ac52d8f8b009abfa92fbb1f98 Mon Sep 17 00:00:00 2001
From: Anderson Bravalheri <andersonbravalheri@gmail.com>
Date: Tue, 19 Jul 2011 02:01:14 -0300
Subject: [PATCH] New configuration tests addedd

---
 test/configuration_test.rb | 39 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/test/configuration_test.rb b/test/configuration_test.rb
index 61593c6b..ae98c9b1 100644
--- a/test/configuration_test.rb
+++ b/test/configuration_test.rb
@@ -2,6 +2,9 @@
 require 'test_helper'
 
 class ConfigurationTest < Test::Unit::TestCase
+  def setup
+    Geocoder::Configuration.set_defaults
+  end
 
   def test_exception_raised_on_bad_lookup_config
     Geocoder::Configuration.lookup = :stoopid
@@ -9,4 +12,40 @@ class ConfigurationTest < Test::Unit::TestCase
       Geocoder.search "something dumb"
     end
   end
+
+  # --- default configuration ---
+  def test_default_units_in_kilometers
+    assert_equal 111, Geocoder::Calculations.distance_between([0,0], [0,1]).round
+  end
+
+  # --- class method configuration ---
+  def test_configurated_by_class_method
+    Geocoder::Configuration.units = :mi
+    distance = Geocoder::Calculations.distance_between([0,0], [0,1]).round
+    assert_not_equal 111, distance
+    assert_equal 69, distance
+
+    Geocoder::Configuration.units = :km
+    distance = Geocoder::Calculations.distance_between([0,0], [0,1]).round
+    assert_equal 111, distance
+    assert_not_equal 69, distance
+  end
+
+  # --- Geocoder#configure method configuration ---
+  def test_geocoder_configuration
+    Geocoder.configure { |config| config.units = :mi }
+
+    assert_equal Geocoder::Configuration.units, :mi
+    distance = Geocoder::Calculations.distance_between([0,0], [0,1]).round
+    assert_not_equal 111, distance
+    assert_equal 69, distance
+
+    Geocoder.configure.units = :km
+
+    assert_equal Geocoder::Configuration.units, :km
+    distance = Geocoder::Calculations.distance_between([0,0], [0,1]).round
+    assert_equal 111, distance
+    assert_not_equal 69, distance
+  end
 end
+
-- 
GitLab