5

私は gmaps4rails を使用しており、いくつかのテストを開発しようとしています。

私は工場を持っています

factory :country do
   sequence(:name) { |n| "Country#{n}" }
end

これは明らかに Google によって認識されていません。

Validation failed: Gmaps4rails address Address invalid

テストでの API 呼び出しの実行にも時間がかかっています。

API コールアウトをスタブするにはどうすればよいですか?

追加してみました

before(:each)
  Country.stub(:geocode)
end

spec ファイルに追加しますが、効果はありません。

私のモデルは次のようになります

class Country < ActiveRecord::Base
  acts_as_gmappable :lat => 'latitude', :lng => 'longitude'
  def gmaps4rails_address
    "#{self.name}" 
  end
  geocoded_by :gmaps4rails_address

  after_validation :geocode
end

アイデアをありがとう。

4

1 に答える 1

5

名前の整数とは関係ありません。

アドレスが存在しないか無効だと思います。

とにかく、ジオコーディングをスキップしたりスタブしたりする方法はたくさんあります。

宝石の仕様からインスピレーションを得る

于 2012-05-23T12:25:28.880 に答える