В моем каталоге поддержки огурца у меня есть следующее в vcr.rb:
require 'vcr'
VCR.configure do |c|
c.cassette_library_dir = 'fixtures/vcr_cassettes'
c.hook_into :webmock
c.ignore_localhost = true
c.default_cassette_options = { record: :new_episodes }
end
Я геокодирую названия городов, которые звонят в API Карт Google. Я пытаюсь записать и заглушить эти запросы, но он продолжает записывать одни и те же запросы в один и тот же файл yml:
- request:
method: get
uri: http://maps.googleapis.com/maps/api/geocode/json?address=Miami,%20FL&language=en&sensor=false
body:
encoding: US-ASCII
string: ''
headers:
Accept-Encoding:
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Accept:
- ! '*/*'
User-Agent:
- Ruby
# response...
- request:
method: get
uri: http://maps.googleapis.com/maps/api/geocode/json?address=Miami,%20FL&language=en&sensor=false
body:
encoding: US-ASCII
string: ''
headers:
Accept-Encoding:
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Accept:
- ! '*/*'
User-Agent:
- Ruby
Это тот же URL-адрес и тот же самый запрос, не должен ли VCR заглушить запрос? Как я могу запретить моим спецификациям ударять API каждый раз, когда я пытаюсь найти тот же город?