Sha256: 7aee60ed1a738c3eac03c3af29acf5353fdcb1c38b5f301814bf9d8738e0973b

Contents?: true

Size: 1.99 KB

Versions: 13

Compression:

Stored size: 1.99 KB

Contents

Feature: :none

  The `:none` record mode will:

    - Replay previously recorded interactions.
    - Cause an error to be raised for any new requests.

  This is useful when your code makes potentially dangerous
  HTTP requests.  The `:none` record mode guarantees that no
  new HTTP requests will be made.

  Background:
    Given a file named "vcr_config.rb" with:
      """ruby
      require 'vcr'

      VCR.configure do |c|
        c.hook_into                :fakeweb
        c.cassette_library_dir     = 'cassettes'
      end
      """
    And a previously recorded cassette file "cassettes/example.yml" with:
      """
      --- 
      http_interactions: 
      - request: 
          method: get
          uri: http://example.com/foo
          body: 
            encoding: UTF-8
            string: ""
          headers: {}
        response: 
          status: 
            code: 200
            message: OK
          headers: 
            Content-Length: 
            - "5"
          body: 
            encoding: UTF-8
            string: Hello
          http_version: "1.1"
        recorded_at: Tue, 01 Nov 2011 04:58:44 GMT
      recorded_with: VCR 2.0.0
      """

  Scenario: Previously recorded responses are replayed
    Given a file named "replay_recorded_response.rb" with:
      """ruby
      require 'vcr_config'

      VCR.use_cassette('example', :record => :none) do
        response = Net::HTTP.get_response('example.com', '/foo')
        puts "Response: #{response.body}"
      end
      """
    When I run `ruby replay_recorded_response.rb`
    Then it should pass with "Response: Hello"

  @exclude-jruby
  Scenario: New requests are prevented
    Given a file named "prevent_new_request.rb" with:
      """ruby
      require 'vcr_config'

      VCR.use_cassette('example', :record => :none) do
        Net::HTTP.get_response('example.com', '/bar')
      end
      """
    When I run `ruby prevent_new_request.rb`
    Then it should fail with "An HTTP request has been made that VCR does not know how to handle"

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
vcr-2.4.0 features/record_modes/none.feature
vcr-2.3.0 features/record_modes/none.feature
vcr-2.2.5 features/record_modes/none.feature
vcr-2.2.4 features/record_modes/none.feature
vcr-2.2.3 features/record_modes/none.feature
vcr-2.2.2 features/record_modes/none.feature
vcr-2.2.1 features/record_modes/none.feature
vcr-2.2.0 features/record_modes/none.feature
vcr-2.1.1 features/record_modes/none.feature
vcr-2.1.0 features/record_modes/none.feature
vcr-2.0.1 features/record_modes/none.feature
vcr-2.0.0 features/record_modes/none.feature
vcr-2.0.0.rc2 features/record_modes/none.feature