Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

We’re showing branches in this repository, but you can also compare across forks.

base fork: myronmarston/vcr
head fork: myronmarston/vcr
Commits on Jul 04, 2010
Myron Marston Use the --debugger option rather than starting the debugger manually. 30f5c5d
Commits on Jul 05, 2010
Myron Marston Use bundler to manage gem dependencies. bca4e49
Commits on Jul 06, 2010
Myron Marston Silence WEBrick logging. 5c29c88
Myron Marston Disable the --debugger option for jruby since ruby-debug can't be ins…
…talled on jruby.
Myron Marston The current version of rack (1.2.1) does not work on ruby 1.8.6, so l…
…ock the dependency to 1.2.0.
Myron Marston Ensure the response body is serialized as a raw string, without any e…
…xtensions on the string instance.

This is needed for rest-client.  Closes #4.
Myron Marston Add conditional check so we don't get an exception for a nil body. 1678b3f
Myron Marston Removed check_dependencies rake task. It's no longer necessary with b…
Myron Marston 1.0.2 release. e13d215
Commits on Jul 22, 2010
Myron Marston Use the platform feature of bundler rather than conditional checks.
Commit the Gemfile.lock file to lock us to this set of gems.
Myron Marston Lock cucumber to 0.8.5 or greater. Added rake as a development depend…
…ency since I use it for development.
Myron Marston Added a be_tagged_with matcher since cucumber no longer provides the …
…#tagged_with? method.
Myron Marston Lock to em-http-request 0.2.7.
The newest release (0.2.10) doesn't work with webmock--see for more info.
Commits on Jul 27, 2010
Myron Marston Upgrade to rspec-2. f05cc59
Commits on Aug 01, 2010
Myron Marston Added spec focused filtering. 817c2b9
Myron Marston Use cucumber Around hook rather than Before/After hooks, as it simpli…
…fies the code significantly.
Myron Marston Simplify passing the block to VCR.use_cassette -- use &block rather t…
…han { }.
Commits on Aug 04, 2010
Myron Marston Require WebMock 1.3.3 or greater.
Previous versions did not handle multiple values for the same response header correctly.  Note that FakeWeb has this issue, too, and I've submitted a patch to fix it.

This closes issue #7.
Commits on Aug 06, 2010
Myron Marston Added link to the new google group. f68da93
Myron Marston Updated README section about WebMock and FakeWeb. 3e69767
Myron Marston Updated VCR usage suggestions. dd5c563
Myron Marston Added note about other similar libraries to the README. f410fda
Myron Marston Updated README to mention RSpec 2 usage. 5aa47b2
Myron Marston 1.0.3 release. ce13279
Commits on Aug 07, 2010
Myron Marston Updated Gemfile.lock. 3bcafd9
Myron Marston Removed task runner as it's no longer needed. 0289298
Myron Marston Raise an error if is given invalid options. 606e328
Myron Marston Optimized ERB rendering a bit. f2bb986
Myron Marston Updated em-http-request to 0.2.10.
See for more info about some of the changes.
Commits on Aug 09, 2010
Myron Marston Extracted the http calls from the specs for each http library into mo…
…dules that we can use in our cucumber features to keep things DRY.
Myron Marston Updated URLs in our cucumber scenarios to be full URLs.
URI.parse('') raises an error because it lacks a path.
URI.parse('') does not ('/' is the path).
Commits on Aug 10, 2010
Myron Marston Ignore .bundle dir. 043a05b
Commits on Aug 11, 2010
Myron Marston Simplify Net::HTTP extension a bit. 788590f
Commits on Aug 12, 2010
Myron Marston Enable debugger in specs. 3ced987
Myron Marston Added some failing scenarios for the new :match_requests_on feature I…
…'m working on.
Myron Marston Added RequestMatcher, which we'll use to determine which parts of an …
…HTTP request to match on.
Myron Marston Added VCR::Request#matcher, which returns a request matcher for the g…
…iven request, using the provided match_attributes.
Commits on Aug 16, 2010
Myron Marston Changed the HTTP Stubbing Adapters to support the match_requests_on
Myron Marston Documentation updates for new :match_requests_on option. 3def0be
Commits on Aug 17, 2010
Myron Marston Minor documentation tweaks. b1c62bc
Bartosz Blimke bblimke Added failing spec to show a problem with recording request headers b…
…efore the real request is made.
Myron Marston Do not record Net::HTTP request headers that it defaults late in the …
…http request process.

Closes #10.
Myron Marston Simplified implementation of RequestMatcher#hash. b470034
Myron Marston Fixed RequestMatcher to handle regex URIs. 2a66bb0
Commits on Aug 18, 2010
Myron Marston Updated README to recommend putting the vcr cassette library director…
…y outside of test/fixtures for a Rails 3 app.

This closes #9.
Commits on Aug 19, 2010
Myron Marston Updated Gemfile to use rspec-core off of github since I'm using some …
…features that haven't been released in a gem yet.
Myron Marston Disable rspec debug for java since ruby-debug doesn't install cleanly…
… on jruby with bundler.
Myron Marston Updated http_stubbing_adapter.request_stubbed? so that it uses a Requ…
Commits on Aug 20, 2010
Myron Marston Refactored some tests. 0f304c1
Myron Marston Fixed some host specs to include a path. bb479ce
Commits on Aug 21, 2010
Myron Marston Add support for matching requests on :path. 0f9165e
Myron Marston Use the latest rspec-expectations from github since it includes a 1.8…
….6 compatibility fix that hasn't been released yet.
Commits on Aug 22, 2010
Myron Marston Fix specs so they pass on 1.8.6. 69d060f
Myron Marston 1.9.2 compatibility fix: sort attributes before putting them in a Set.
On 1.9.2,[1, 2]).hash !=[2, 1]).hash, but[1, 2]).hash ==[1, 2]).hash.
Myron Marston 1.9.2 compatibility fix: don't try to use ruby-debug on 1.9.2.
On 1.9.2, I'm getting errors like these:

dyld: lazy symbol binding failed: Symbol not found: _rb_method_node
  Referenced from: /Users/mmarston/.rvm/gems/ruby-1.9.2-p0/gems/ruby-debug-base19-0.11.23/lib/ruby_debug.bundle
  Expected in: flat namespace

dyld: Symbol not found: _rb_method_node
  Referenced from: /Users/mmarston/.rvm/gems/ruby-1.9.2-p0/gems/ruby-debug-base19-0.11.23/lib/ruby_debug.bundle
  Expected in: flat namespace
Myron Marston 1.9.2 compatibility fix: in an override, use an alias to refer to the…
… original method rather than super.

This works around an error I'm getting on 1.9.2:

"super from singleton method that is defined to multiple classes is not supported; this will be fixed in 1.9.3 or later"
Myron Marston Make it easy to temporarily use documentation format for the specs. 4ed657f
Myron Marston 1.9.1 compatibility fix: moved a constant to the global namespace to …
…avoid an rspec bug that manifests on 1.9.1.

See these links for more info:
Myron Marston Lock rspec-core to one of my branches that fixes an issue with shared…
… example groups on 1.8.6.
Myron Marston Require spec_helper's full expanded path so it's not loaded twice. 9fbae9f
Myron Marston Fixed Gemfile so rbx can use it. rcov doesn't work on rbx. 1c49c08
Myron Marston Readme updates. c948f88
Myron Marston 1.1.0 release. 4a465ca
Commits on Aug 23, 2010
Myron Marston Removed default value of argument--there's no need for it. 8a3d22f
Myron Marston Optimized #stub_requests a bit.
Appending to an array with `<< value` is faster than with `+= [value]`, as it doesn't create a new array object for each append.

A benchmark shows there is about a 10x performance difference:
Myron Marston Upgrade to FakeWeb 1.3.0. f9e0dab
Myron Marston The latest FakeWeb passes this spec (was pending before). ed4a662
Myron Marston Use FakeWeb::Utility.request_uri_as_string rather than our own logic …
…to create the request uri.
Commits on Aug 24, 2010
Myron Marston Use a localhost regex with FakeWeb.allow_net_connect for the ignore_l…
…ocalhost feature.

This is simpler than changing allow_net_connect from false to true and back again in our Net::HTTP extension for a localhost request.
Myron Marston Require FakeWeb 1.3.0 or greater. a2a9f54
Commits on Aug 26, 2010
Myron Marston Change http stubbing adapters to be modules rather than classes.
They should never be instantiated and don't really hold state.  A module is more appropriate here.
Myron Marston Refactored and updated #check_version! on FakeWeb/WebMock adapters so…
… that a warning is printed for a version with a greater major or minor version number.

This simulates the ~> gem comparison operator, and is inspired by wycats' recent blog post:
Myron Marston Updated Gemfile/gemspec/Rakefile, etc to use latest best practices ba…
…sed on the gem skeleton that bundler generates.
Myron Marston Add missing test coverage for #ignore_localhost? e0c518c
Commits on Aug 27, 2010
Myron Marston Lock dev dependency to WebMock 1.3.3.
On 1.3.4 I get a failing cucumber scenario, but I believe it's a bug in WebMock.  I'm going to investigate more.
Myron Marston Add REE to list of tested ruby interpretters. 99147b7
Myron Marston The newest ruby-debug-base19 isn't working on 1.9.1 for me, so lock t…
…o the previous release.
Myron Marston 1.1.1 release. 69c0fe7
Commits on Aug 28, 2010
Myron Marston List patron and em-http-request in our Gemfile so that our Gemfile.lo…
…ck doesn't change everytime we run something on JRuby.
Commits on Sep 08, 2010
Myron Marston When the result of a request is an exception, raise it, rather than t…
…rying to read a body from it.
Myron Marston Update a few development gems. d7284af
Commits on Sep 09, 2010
Myron Marston Don't extend a Net::HTTP response with our module when WebMock has al…
…ready extended it with its own module.

These modules duplicate the same behavior and stomp on each other's toes.
Myron Marston Simplify implementation of VCR::Net::HTTPResponse. e6270c5
Myron Marston Remove unnecessary cucumber LoadError rescue. 53d1f7d
Commits on Sep 10, 2010
Myron Marston Add ability to disable Net::HTTP monkey patches for some specs. 96c71dd
Myron Marston Fix VCR::Net::HTTPResponse so it handles a nil body (such as for a HE…
…AD request).
Myron Marston Documentation update. 6d8ec54
Myron Marston 1.1.2 release. b827a7b