Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

53 lines (42 sloc) 1.742 kB
Feature: Allow HTTP connections when no cassette
Usually, HTTP requests made when no cassette is inserted will [result in an
error](../cassettes/error-for-http-request-made-when-no-cassette-is-in-use).
You can set the `allow_http_connections_when_no_cassette` configuration option
to true to allow requests, if you do not want to use VCR for everything.
Background:
Given a file named "vcr_setup.rb" with:
"""ruby
if ARGV.include?('--with-server')
start_sinatra_app(:port => 7777) do
get('/') { "Hello" }
end
end
require 'vcr'
VCR.configure do |c|
c.allow_http_connections_when_no_cassette = true
c.hook_into :fakeweb
c.cassette_library_dir = 'cassettes'
end
"""
And the directory "vcr/cassettes" does not exist
Scenario: Allow HTTP connections when no cassette
Given a file named "no_cassette.rb" with:
"""ruby
require 'vcr_setup.rb'
puts "Response: " + Net::HTTP.get_response('localhost', '/', 7777).body
"""
When I run `ruby no_cassette.rb --with-server`
Then the output should contain "Response: Hello"
Scenario: Cassettes record and replay as normal
Given a file named "record_replay_cassette.rb" with:
"""ruby
require 'vcr_setup.rb'
VCR.use_cassette('localhost') do
puts "Response: " + Net::HTTP.get_response('localhost', '/', 7777).body
end
"""
When I run `ruby record_replay_cassette.rb --with-server`
Then the output should contain "Response: Hello"
And the file "cassettes/localhost.yml" should contain "body: Hello"
When I run `ruby record_replay_cassette.rb`
Then the output should contain "Response: Hello"
Jump to Line
Something went wrong with that request. Please try again.