Search code examples
ruby-on-railsrubyrails-geocoder

Disable Geocode in Test environment


In my Ruby on Rails application I'm using Geocoder. It works fine, but my tests are ten times slower! I found some solution but in my opinion they are not very clear? Is there any way to disable Geocoder on test environment?


Solution

  • According to the gem documentation on Github, you can use a test lookup in your tests, to avoid doing actual requests:

    Geocoder.configure(:lookup => :test)
    
    Geocoder::Lookup::Test.add_stub(
      "New York, NY", [
        {
          'latitude'     => 40.7143528,
          'longitude'    => -74.0059731,
          'address'      => 'New York, NY, USA',
          'state'        => 'New York',
          'state_code'   => 'NY',
          'country'      => 'United States',
          'country_code' => 'US'
        }
      ]
    )