我已经回顾了一些Gmaps4rails存根问题并认为我非常接近,但并不完全存在。请原谅我:在铁轨中捣乱和嘲笑非常新。
所有这些代码都适用于现实世界,只是试图让它在测试期间跳过地理编码。现在测试有时工作,有时失败, Gmaps4rails地址无效错误
所以,我有一个非常简单的party.rb模型,其中acts_as_gmappable:
def gmaps4rails_address
"#{self.city}, #{self.country}"
end
我已经从github粘贴geocoding.rb并将其放在/ spec / support中未经修改
但是,我似乎无法告诉我的parties_controller_spec使用存根而不是真实存根。我确定我错过了一些简单的东西......我试过了:
include Geocoding
甚至
Gmaps4rails.set_gmaps4rails_options!({:msg => "quack"})
并且我没有看到“嘎嘎”作为错误消息,我看到验证失败:Gmaps4rails地址无效
也尝试过:
Gmaps4rails.set_gmaps4rails_options!({:validation => false, :check_process => false, :process_geocoding => false})
但没有效果。
我的个工厂.rb很简单:派对定义:
Factory.define :party do |party|
party.name "Thai New Year"
party.city "Phuket"
party.country "Thailand"
...
end
所以,我很确定我没有正确地告诉rspec使用存根的Gmaps4rails。那么,我究竟应该把代码告诉Gmaps4rails使用你的stub_geocoding方法而不是实际尝试执行地理编码呢?
如果这是一个平凡的问题,我们将不胜感激。
戴夫
答案 0 :(得分:4)
如果您不想要任何地理编码,请执行此操作:
Factory.define :party do |party|
party.name "Thai New Year"
party.city "Phuket"
party.country "Thailand"
party.gmaps true #<= this is what tells the gem not to fire geocoding
party.latitude whatever_if_relevant
party.longitude whatever_if_relevant
...
end