# File lib/vcr/cassette.rb, line 13
    def initialize(name, options = {})
      options = VCR::Config.default_cassette_options.merge(options)
      invalid_options = options.keys - [
        :record,
        :erb,
        :allow_real_http,
        :match_requests_on,
        :re_record_interval,
        :tag,
        :update_content_length_header
      ]

      if invalid_options.size > 0
        raise ArgumentError.new("You passed the following invalid options to VCR::Cassette.new: #{invalid_options.inspect}.")
      end

      @name               = name
      @record_mode        = options[:record]
      @erb                = options[:erb]
      @match_requests_on  = options[:match_requests_on]
      @re_record_interval = options[:re_record_interval]
      @tag                = options[:tag]
      @record_mode        = :all if should_re_record?
      @update_content_length_header = options[:update_content_length_header]

      deprecate_old_cassette_options(options)
      raise_error_unless_valid_record_mode

      set_http_connections_allowed
      load_recorded_interactions
    end