Sha256: e62e46c2ca035add98fdc3ae412a8b8460807c3852b5b6a276d7c4b05c364bb4

Contents?: true

Size: 1.99 KB

Versions: 68

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                :webmock
        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

68 entries across 68 versions & 9 rubygems

Version Path
cloudsmith-api-0.49.98 vendor/bundle/ruby/2.6.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.49.94 vendor/bundle/ruby/2.6.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.49.21 vendor/bundle/ruby/2.6.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.49.15 vendor/bundle/ruby/2.6.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.49.13 vendor/bundle/ruby/2.6.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.49.9 vendor/bundle/ruby/2.3.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.44.4 vendor/bundle/ruby/2.3.0/gems/vcr-3.0.3/features/record_modes/none.feature
dadapush_client-1.0.1 vendor/bundle/ruby/2.3.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.30.7 vendor/bundle/ruby/2.3.0/gems/vcr-3.0.3/features/record_modes/none.feature
color_me_shop-1.0.0 vendor/bundle/ruby/2.5.0/gems/vcr-3.0.3/features/record_modes/none.feature
cloudsmith-api-0.21.4 vendor/bundle/ruby/2.3.0/gems/vcr-3.0.3/features/record_modes/none.feature
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/vcr-3.0.3/features/record_modes/none.feature
logstash-input-salesforce-3.0.0 vendor/jruby/1.9/gems/vcr-3.0.3/features/record_modes/none.feature
vcr-3.0.3 features/record_modes/none.feature
vcr-3.0.2 features/record_modes/none.feature
dwolla_swagger-1.0.6 vendor/bundle/ruby/2.2.0/gems/vcr-2.9.3/features/record_modes/none.feature
vcr-3.0.1 features/record_modes/none.feature
vcr-3.0.0 features/record_modes/none.feature
mustwin-vcr-2.9.3 features/record_modes/none.feature
vcr-2.9.3 features/record_modes/none.feature