在测试环境中禁用地理编码

时间:2014-12-15 20:55:07

标签: ruby-on-rails ruby rails-geocoder

在我的Ruby on Rails应用程序中,我使用Geocoder。它工作正常,但我的测试慢了十倍!我找到了一些解决方案,但在我看来他们不是很清楚?有没有办法在测试环境中禁用Geocoder?

1 个答案:

答案 0 :(得分:8)

根据gem documentation on Github,您可以在测试中使用测试查找,以避免执行实际请求:

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'
    }
  ]
)