0

나는 스텁 질문에 대한 몇 가지 Gmaps4rails를 검토 한 결과 매우 가깝다고 생각합니다. 용서해주십시오 : 스터 빙과 레일 조롱에 아주 새롭습니다.geocoding.rb로 스텁 핑 Gmaps4rails

이 코드는 모두 실제 세계에서 작동하며 테스트하는 동안 지오 코딩을 건너 뛰려고 시도합니다.

def gmaps4rails_address 
    "#{self.city}, #{self.country}" 
end 

내가 붙여 넣은 : 지금 때때로 작업과 때때로Gmaps4rails 주소 주소 무효 오류

그래서 실패, 나는 acts_as_gmappable 매우 간단한 party.rb 모델을 테스트 geocoding.rb를 github에서 가져 와서/spec/support unmodified에 배치했습니다.

그러나 실제로는 party_controller_spec에서 실제 파티 대신 스텁을 사용한다고 말할 수 없습니다.

include Geocoding 

심지어

Gmaps4rails.set_gmaps4rails_options!({:msg => "quack"}) 

을하고 난 참조 오류 메시지로 "돌팔이 의사"를 참조하지 않는 : 나는 간단한 뭔가를 누락 확신 ... 나는 시도했다 검증 실패 : 잘못된 Gmaps4rails 주소 주소 또한 시도

:

Gmaps4rails.set_gmaps4rails_options!({:validation => false, :check_process => false, :process_geocoding => false}) 

하지만 효과 없음. 자 정의 :

내 factories.rb는 간단이있다

Factory.define :party do |party| 
party.name  "Thai New Year" 
party.city  "Phuket" 
party.country "Thailand" 
... 
end 

그래서, 내가 제대로 스텁 Gmaps4rails를 사용하는 RSpec에 말하지 않은 확신 해요. 그럼, 실제로 지오 코딩을 수행하는 대신 Gmaps4rails에 stub_geocoding 메소드를 사용하도록 지시하는 코드를 어디에 넣어야합니까?

도움이 될 것입니다 ... 죄송합니다 평범한 질문이 있다면.

데이브

+0

acts_as_gmappable – apneadiving

+0

옵션 없음! 그랬어! 나는 그것이 30 문자 미만의 코드라는 것을 알았다! :-). BTW Gmaps4rails는 대단합니다 !! –

답변

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 
+0

빵에 acts_as_gmappable에서 어떤 옵션 당신이 할 수 (있는 경우) –

+0

다행 당신의 필요에 맞게 :) – apneadiving