vcr 1.11.1 → 1.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. data/.travis.yml +3 -0
  2. data/CHANGELOG.md +11 -4
  3. data/Gemfile +5 -4
  4. data/Rakefile +23 -4
  5. data/cucumber.yml +2 -2
  6. data/features/cassettes/automatic_re_recording.feature +2 -2
  7. data/features/cassettes/dynamic_erb.feature +2 -2
  8. data/features/cassettes/format.feature +1 -1
  9. data/features/cassettes/naming.feature +1 -1
  10. data/features/cassettes/no_cassette.feature +4 -4
  11. data/features/cassettes/request_matching.feature +5 -5
  12. data/features/cassettes/update_content_length_header.feature +3 -3
  13. data/features/configuration/allow_http_connections_when_no_cassette.feature +3 -3
  14. data/features/configuration/cassette_library_dir.feature +1 -1
  15. data/features/configuration/default_cassette_options.feature +5 -5
  16. data/features/configuration/filter_sensitive_data.feature +6 -6
  17. data/features/configuration/hooks.feature +6 -6
  18. data/features/configuration/ignore_hosts.feature +1 -1
  19. data/features/configuration/ignore_localhost.feature +2 -2
  20. data/features/configuration/stub_with.feature +4 -4
  21. data/features/http_libraries/em_http_request.feature +4 -4
  22. data/features/http_libraries/net_http.feature +10 -10
  23. data/features/middleware/faraday.feature +2 -2
  24. data/features/middleware/rack.feature +2 -2
  25. data/features/record_modes/all.feature +2 -2
  26. data/features/record_modes/new_episodes.feature +2 -2
  27. data/features/record_modes/none.feature +2 -2
  28. data/features/record_modes/once.feature +3 -3
  29. data/features/step_definitions/cli_steps.rb +6 -2
  30. data/features/support/env.rb +5 -8
  31. data/features/support/http_lib_filters.rb +6 -1
  32. data/features/test_frameworks/cucumber.feature +2 -2
  33. data/features/test_frameworks/rspec.feature +2 -2
  34. data/features/test_frameworks/shoulda.feature +13 -10
  35. data/features/test_frameworks/test_unit.feature +12 -9
  36. data/lib/vcr.rb +6 -0
  37. data/lib/vcr/config.rb +7 -1
  38. data/lib/vcr/deprecations/cassette.rb +16 -16
  39. data/lib/vcr/extensions/net_http_response.rb +4 -0
  40. data/lib/vcr/http_stubbing_adapters/common.rb +1 -1
  41. data/lib/vcr/http_stubbing_adapters/fakeweb.rb +6 -0
  42. data/lib/vcr/http_stubbing_adapters/webmock.rb +7 -0
  43. data/lib/vcr/middleware/cassette_arguments.rb +1 -0
  44. data/lib/vcr/structs/http_interaction.rb +1 -0
  45. data/lib/vcr/version.rb +1 -1
  46. data/spec/capture_warnings.rb +42 -0
  47. data/spec/monkey_patches.rb +5 -1
  48. data/spec/spec_helper.rb +2 -1
  49. data/spec/support/shared_example_groups/http_library.rb +19 -19
  50. data/spec/support/shared_example_groups/http_stubbing_adapter.rb +6 -6
  51. data/spec/support/shared_example_groups/ignore_localhost_deprecation.rb +1 -1
  52. data/spec/support/shared_example_groups/normalizers.rb +13 -15
  53. data/spec/support/sinatra_app.rb +2 -0
  54. data/spec/support/vcr_localhost_server.rb +4 -3
  55. data/spec/vcr/cassette/reader_spec.rb +4 -4
  56. data/spec/vcr/cassette_spec.rb +28 -28
  57. data/spec/vcr/config_spec.rb +11 -11
  58. data/spec/vcr/deprecations/cassette_spec.rb +4 -4
  59. data/spec/vcr/deprecations/config_spec.rb +2 -2
  60. data/spec/vcr/deprecations/http_stubbing_adapters/fakeweb_spec.rb +1 -1
  61. data/spec/vcr/extensions/net_http_response_spec.rb +3 -3
  62. data/spec/vcr/extensions/net_http_spec.rb +4 -4
  63. data/spec/vcr/http_stubbing_adapters/excon_spec.rb +5 -5
  64. data/spec/vcr/http_stubbing_adapters/faraday_spec.rb +4 -4
  65. data/spec/vcr/http_stubbing_adapters/multi_object_proxy_spec.rb +4 -4
  66. data/spec/vcr/middleware/cassette_arguments_spec.rb +5 -5
  67. data/spec/vcr/middleware/faraday_spec.rb +3 -3
  68. data/spec/vcr/middleware/rack_spec.rb +4 -4
  69. data/spec/vcr/request_matcher_spec.rb +13 -13
  70. data/spec/vcr/structs/http_interaction_spec.rb +6 -6
  71. data/spec/vcr/structs/request_spec.rb +7 -7
  72. data/spec/vcr/structs/response_spec.rb +5 -5
  73. data/spec/vcr/structs/response_status_spec.rb +2 -2
  74. data/spec/vcr/test_frameworks/cucumber_spec.rb +2 -2
  75. data/spec/vcr/test_frameworks/rspec_spec.rb +6 -7
  76. data/spec/vcr/util/hooks_spec.rb +9 -9
  77. data/spec/vcr_spec.rb +11 -17
  78. data/vcr.gemspec +11 -5
  79. metadata +47 -49
  80. data/features/support/aruba_workaround/aruba_patches.rb +0 -36
  81. data/features/support/aruba_workaround/background_process.rb +0 -4
@@ -31,8 +31,8 @@ describe VCR::HttpStubbingAdapters::Excon do
31
31
  end
32
32
  end
33
33
 
34
- recorded.should == played_back
35
- recorded.should == 'query: Tolkien'
34
+ recorded.should eq(played_back)
35
+ recorded.should eq('query: Tolkien')
36
36
  end
37
37
  end
38
38
 
@@ -51,8 +51,8 @@ describe VCR::HttpStubbingAdapters::Excon do
51
51
  chunks.join
52
52
  end
53
53
 
54
- recorded.should == played_back
55
- recorded.should == "FOO!"
54
+ recorded.should eq(played_back)
55
+ recorded.should eq("FOO!")
56
56
  end
57
57
  end
58
58
 
@@ -61,7 +61,7 @@ describe VCR::HttpStubbingAdapters::Excon do
61
61
  described_class.http_connections_allowed = true
62
62
 
63
63
  VCR.should_receive(:record_http_interaction) do |interaction|
64
- interaction.response.status.code.should == 404
64
+ interaction.response.status.code.should eq(404)
65
65
  end
66
66
 
67
67
  expect {
@@ -40,10 +40,10 @@ describe VCR::HttpStubbingAdapters::Faraday do
40
40
  end
41
41
 
42
42
  def test_stubbed_responses
43
- stubbed_response_for(request_1).should == :response_1
44
- stubbed_response_for(request_1).should == :response_2
45
- stubbed_response_for(request_1).should == :response_2
46
- stubbed_response_for(request_1).should == :response_2
43
+ stubbed_response_for(request_1).should eq(:response_1)
44
+ stubbed_response_for(request_1).should eq(:response_2)
45
+ stubbed_response_for(request_1).should eq(:response_2)
46
+ stubbed_response_for(request_1).should eq(:response_2)
47
47
  end
48
48
 
49
49
  describe '.stubbed_response_for' do
@@ -17,12 +17,12 @@ module VCR
17
17
 
18
18
  it 'is a basic object with very few of its own methods' do
19
19
  inst_methods = described_class.instance_methods.map { |m| m.to_sym }
20
- inst_methods.should_not include(:send, :object_id, :__id__)
20
+ inst_methods.should_not include(:send, :object_id)
21
21
  end
22
22
 
23
23
  describe '#proxied_objects' do
24
24
  it 'returns the proxied objects' do
25
- subject.proxied_objects.should == [mock1, mock2]
25
+ subject.proxied_objects.should eq([mock1, mock2])
26
26
  end
27
27
  end
28
28
 
@@ -51,7 +51,7 @@ module VCR
51
51
  mock1.should_not respond_to(:request_stubbed?)
52
52
  mock2.should_receive(:request_stubbed?).and_return(true)
53
53
 
54
- subject.request_stubbed?.should == true
54
+ subject.request_stubbed?.should eq(true)
55
55
  end
56
56
 
57
57
  it 'proxies messages to each object' do
@@ -74,7 +74,7 @@ module VCR
74
74
  mock1.should_receive(method).and_return(:return_value_1)
75
75
  mock2.should_receive(method).and_return(:return_value_1)
76
76
 
77
- subject.__send__(method).should == :return_value_1
77
+ subject.__send__(method).should eq(:return_value_1)
78
78
  end
79
79
  end
80
80
  end
@@ -8,24 +8,24 @@ describe VCR::Middleware::CassetteArguments do
8
8
 
9
9
  it 'stores the given value, returning it when no arg is given' do
10
10
  subject.name :value1
11
- subject.name.should == :value1
11
+ subject.name.should eq(:value1)
12
12
 
13
13
  subject.name :value2
14
- subject.name.should == :value2
14
+ subject.name.should eq(:value2)
15
15
  end
16
16
  end
17
17
 
18
18
  describe '#options' do
19
19
  it 'initially returns an empty hash' do
20
- subject.options.should == {}
20
+ subject.options.should eq({})
21
21
  end
22
22
 
23
23
  it 'merges the given hash options, returning them when no arg is given' do
24
24
  subject.options :record => :new_episodes
25
- subject.options.should == { :record => :new_episodes }
25
+ subject.options.should eq({ :record => :new_episodes })
26
26
 
27
27
  subject.options :erb => true
28
- subject.options.should == { :record => :new_episodes, :erb => true }
28
+ subject.options.should eq({ :record => :new_episodes, :erb => true })
29
29
  end
30
30
  end
31
31
  end
@@ -25,13 +25,13 @@ describe VCR::Middleware::Faraday do
25
25
  end
26
26
 
27
27
  it 'sets the cassette name based on the provided block' do
28
- app = lambda { |env| VCR.current_cassette.name.should == 'rack_cassette' }
28
+ app = lambda { |env| VCR.current_cassette.name.should eq('rack_cassette') }
29
29
  instance = described_class.new(app) { |c| c.name 'rack_cassette' }
30
30
  instance.call(env_hash)
31
31
  end
32
32
 
33
33
  it 'sets the cassette options based on the provided block' do
34
- app = lambda { |env| VCR.current_cassette.erb.should == { :foo => :bar } }
34
+ app = lambda { |env| VCR.current_cassette.erb.should eq({ :foo => :bar }) }
35
35
  instance = described_class.new(app, &lambda do |c|
36
36
  c.name 'c'
37
37
  c.options :erb => { :foo => :bar }
@@ -42,7 +42,7 @@ describe VCR::Middleware::Faraday do
42
42
 
43
43
  it 'yields the env to the provided block when the block accepts 2 arguments' do
44
44
  instance = described_class.new(lambda { |env| }, &lambda do |c, env|
45
- env.should == env_hash
45
+ env.should eq(env_hash)
46
46
  c.name 'c'
47
47
  end)
48
48
 
@@ -15,7 +15,7 @@ describe VCR::Middleware::Rack do
15
15
  rack_app = mock
16
16
  rack_app.should_receive(:call).with(env_hash).and_return(:response)
17
17
  instance = described_class.new(rack_app) { |c| c.name 'cassette_name' }
18
- instance.call(env_hash).should == :response
18
+ instance.call(env_hash).should eq(:response)
19
19
  end
20
20
 
21
21
  it 'uses a cassette when the rack app is called' do
@@ -27,13 +27,13 @@ describe VCR::Middleware::Rack do
27
27
  end
28
28
 
29
29
  it 'sets the cassette name based on the provided block' do
30
- rack_app = lambda { |env| VCR.current_cassette.name.should == 'rack_cassette' }
30
+ rack_app = lambda { |env| VCR.current_cassette.name.should eq('rack_cassette') }
31
31
  instance = described_class.new(rack_app) { |c| c.name 'rack_cassette' }
32
32
  instance.call({})
33
33
  end
34
34
 
35
35
  it 'sets the cassette options based on the provided block' do
36
- rack_app = lambda { |env| VCR.current_cassette.erb.should == { :foo => :bar } }
36
+ rack_app = lambda { |env| VCR.current_cassette.erb.should eq({ :foo => :bar }) }
37
37
  instance = described_class.new(rack_app, &lambda do |c|
38
38
  c.name 'c'
39
39
  c.options :erb => { :foo => :bar }
@@ -44,7 +44,7 @@ describe VCR::Middleware::Rack do
44
44
 
45
45
  it 'yields the rack env to the provided block when the block accepts 2 arguments' do
46
46
  instance = described_class.new(lambda { |env| }, &lambda do |c, env|
47
- env.should == env_hash
47
+ env.should eq(env_hash)
48
48
  c.name 'c'
49
49
  end)
50
50
 
@@ -10,7 +10,7 @@ describe VCR::RequestMatcher do
10
10
  describe '#uri' do
11
11
  def self.for_matcher(*attributes, &block)
12
12
  context "for match_attributes = #{attributes.inspect}" do
13
- subject { matcher = VCR::RequestMatcher.new(stub(:uri => uri), attributes).uri }
13
+ subject { VCR::RequestMatcher.new(stub(:uri => uri), attributes).uri }
14
14
  module_eval(&block)
15
15
  end
16
16
  end
@@ -18,11 +18,11 @@ describe VCR::RequestMatcher do
18
18
  let(:uri) { 'http://foo.example.com/path/to/something?param=value' }
19
19
 
20
20
  for_matcher do
21
- it("returns a regex that matches any URI") { should == /.*/ }
21
+ it("returns a regex that matches any URI") { should eq(/.*/) }
22
22
  end
23
23
 
24
24
  for_matcher :uri do
25
- it("returns the exact uri") { should == uri }
25
+ it("returns the exact uri") { should eq(uri) }
26
26
  end
27
27
 
28
28
  for_matcher :host do
@@ -73,7 +73,7 @@ describe VCR::RequestMatcher do
73
73
  end
74
74
 
75
75
  [[:uri, :host], [:uri, :path], [:uri, :host, :path]].each do |attributes|
76
- for_matcher *attributes do
76
+ for_matcher(*attributes) do
77
77
  it "raises an appropriate error" do
78
78
  expect { subject }.to raise_error(/match_attributes cannot include/)
79
79
  end
@@ -83,7 +83,7 @@ describe VCR::RequestMatcher do
83
83
  it "returns the request's URI when it is a regex, regardless of the match attributes" do
84
84
  [:uri, :host, :path].each do |attribute|
85
85
  matcher = VCR::RequestMatcher.new(stub(:uri => /some regex/), [attribute])
86
- matcher.uri.should == /some regex/
86
+ matcher.uri.should eq(/some regex/)
87
87
  end
88
88
  end
89
89
  end
@@ -91,7 +91,7 @@ describe VCR::RequestMatcher do
91
91
  describe '#method' do
92
92
  it 'returns the request method when the match attributes include :method' do
93
93
  matcher = VCR::RequestMatcher.new(stub(:method => :get), [:method])
94
- matcher.method.should == :get
94
+ matcher.method.should eq(:get)
95
95
  end
96
96
 
97
97
  it 'returns nil when the match attributes do not include :method' do
@@ -103,7 +103,7 @@ describe VCR::RequestMatcher do
103
103
  describe '#body' do
104
104
  it 'returns the request body when the match attributes include :body' do
105
105
  matcher = VCR::RequestMatcher.new(stub(:body => 'id=7'), [:body])
106
- matcher.body.should == 'id=7'
106
+ matcher.body.should eq('id=7')
107
107
  end
108
108
 
109
109
  it 'returns nil when the match attributes do not include :body' do
@@ -115,7 +115,7 @@ describe VCR::RequestMatcher do
115
115
  describe '#headers' do
116
116
  it 'returns the request headers when the match attributes include :headers' do
117
117
  matcher = VCR::RequestMatcher.new(stub(:headers => { 'key' => 'value' }), [:headers])
118
- matcher.headers.should == { 'key' => 'value' }
118
+ matcher.headers.should eq({ 'key' => 'value' })
119
119
  end
120
120
 
121
121
  it 'returns nil when the match attributes do not include :headers' do
@@ -152,14 +152,14 @@ describe VCR::RequestMatcher do
152
152
  describe '#hash' do
153
153
  it 'returns the same code for two objects when #match_attributes, #method, #uri, #body and #headers are the same, even when the request object is different' do
154
154
  m1, m2 = matchers_varying_on(:request)
155
- m1.hash.should == m2.hash
155
+ m1.hash.should eq(m2.hash)
156
156
  end
157
157
 
158
158
  it 'returns the same code for two objects when the matchers are the same, but #match_attributes has its elements in a different order' do
159
159
  m1, m2 = matcher, matcher
160
160
  m1.match_attributes = [:method, :uri, :body, :headers]
161
161
  m2.match_attributes = [:method, :body, :uri, :headers]
162
- m1.hash.should == m2.hash
162
+ m1.hash.should eq(m2.hash)
163
163
  end
164
164
 
165
165
  [:match_attributes, :method, :uri, :body, :headers].each do |different_attr|
@@ -173,19 +173,19 @@ describe VCR::RequestMatcher do
173
173
  it 'returns the same code for the same headers' do
174
174
  m1 = matcher_with_headers('x-http-header' => ['val1'])
175
175
  m2 = matcher_with_headers('x-http-header' => ['val1'])
176
- m1.hash.should == m2.hash
176
+ m1.hash.should eq(m2.hash)
177
177
  end
178
178
 
179
179
  it 'returns the same code when the header keys are ordered differently' do
180
180
  m1 = matcher_with_headers('x-http-header1' => ['val1'], 'x-http-header2' => ['val2'])
181
181
  m2 = matcher_with_headers('x-http-header2' => ['val2'], 'x-http-header1' => ['val1'])
182
- m1.hash.should == m2.hash
182
+ m1.hash.should eq(m2.hash)
183
183
  end
184
184
 
185
185
  it 'returns the same code when the header value arrays are ordered differently' do
186
186
  m1 = matcher_with_headers('x-http-header' => ['val1', 'val2'])
187
187
  m2 = matcher_with_headers('x-http-header' => ['val2', 'val1'])
188
- m1.hash.should == m2.hash
188
+ m1.hash.should eq(m2.hash)
189
189
  end
190
190
 
191
191
  it 'returns a different code when the header values are different' do
@@ -6,7 +6,7 @@ describe VCR::HTTPInteraction do
6
6
  sig = mock('request signature')
7
7
  sig.should_receive(attr).and_return(:the_value)
8
8
  instance = described_class.new(sig, nil)
9
- instance.send(attr).should == :the_value
9
+ instance.send(attr).should eq(:the_value)
10
10
  end
11
11
  end
12
12
 
@@ -62,23 +62,23 @@ describe VCR::HTTPInteraction do
62
62
 
63
63
  [:request, :response].each do |part|
64
64
  it "replaces the sensitive text in the #{part} header keys and values" do
65
- subject.send(part).headers.should == {
65
+ subject.send(part).headers.should eq({
66
66
  'x-http-AAA' => ['bar23', '23AAA'],
67
67
  'x-http-bar' => ['AAA23', '18']
68
- }
68
+ })
69
69
  end
70
70
 
71
71
  it "replaces the sensitive text in the #{part} body" do
72
- subject.send(part).body.should == "The body AAA this is (AAA-Foo)"
72
+ subject.send(part).body.should eq("The body AAA this is (AAA-Foo)")
73
73
  end
74
74
  end
75
75
 
76
76
  it 'replaces the sensitive text in the response status' do
77
- subject.response.status.message.should == 'OK AAA'
77
+ subject.response.status.message.should eq('OK AAA')
78
78
  end
79
79
 
80
80
  it 'replaces sensitive text in the request URI' do
81
- subject.request.uri.should == 'http://example-AAA.com:80/AAA/'
81
+ subject.request.uri.should eq('http://example-AAA.com:80/AAA/')
82
82
  end
83
83
  end
84
84
  end
@@ -4,7 +4,7 @@ describe VCR::Request do
4
4
  describe '#matcher' do
5
5
  it 'returns a matcher with the given request' do
6
6
  req = VCR::Request.new
7
- req.matcher([:uri]).request.should == req
7
+ req.matcher([:uri]).request.should eq(req)
8
8
  end
9
9
 
10
10
  it 'returns a matcher with the given match_attributes' do
@@ -18,7 +18,7 @@ describe VCR::Request do
18
18
 
19
19
  context 'when given no arguments' do
20
20
  it 'returns the HTTP method' do
21
- subject.method.should == :get
21
+ subject.method.should eq(:get)
22
22
  end
23
23
  end
24
24
 
@@ -26,7 +26,7 @@ describe VCR::Request do
26
26
  it 'returns the method object for the named method' do
27
27
  m = subject.method(:class)
28
28
  m.should be_a(Method)
29
- m.call.should == described_class
29
+ m.call.should eq(described_class)
30
30
  end
31
31
  end
32
32
  end
@@ -42,13 +42,13 @@ describe VCR::Request do
42
42
  end
43
43
 
44
44
  it { should be_instance_of(VCR::Request) }
45
- its(:method) { should == :post }
46
- its(:body) { should == 'id=7' }
47
- its(:headers) { should == { "content-type" => ["application/x-www-form-urlencoded"] } }
45
+ its(:method) { should eq(:post) }
46
+ its(:body) { should eq('id=7') }
47
+ its(:headers) { should eq({ "content-type" => ["application/x-www-form-urlencoded"] }) }
48
48
 
49
49
  it 'sets the uri using the http_stubbing_adapter.request_uri' do
50
50
  VCR.http_stubbing_adapter.should_receive(:request_uri).with(net_http, request).and_return('foo/bar')
51
- subject.uri.should == 'foo/bar'
51
+ subject.uri.should eq('foo/bar')
52
52
  end
53
53
  end
54
54
 
@@ -6,9 +6,9 @@ describe VCR::Response do
6
6
  subject { described_class.from_net_http_response(response) }
7
7
 
8
8
  it { should be_instance_of(described_class) }
9
- its(:body) { should == 'The response from example.com' }
10
- its(:http_version) { should == '1.1' }
11
- its(:headers) { should == {
9
+ its(:body) { should eq('The response from example.com') }
10
+ its(:http_version) { should eq('1.1') }
11
+ its(:headers) { should eq({
12
12
  "last-modified" => ['Tue, 15 Nov 2005 13:24:10 GMT'],
13
13
  "etag" => ["\"24ec5-1b6-4059a80bfd280\""],
14
14
  "content-type" => ["text/html; charset=UTF-8"],
@@ -16,12 +16,12 @@ describe VCR::Response do
16
16
  "server" => ['Apache/2.2.3 (CentOS)'],
17
17
  "content-length" => ['438'],
18
18
  "accept-ranges" => ['bytes']
19
- } }
19
+ }) }
20
20
 
21
21
  it 'assigns the status using VCR::ResponseStatus.from_net_http_response' do
22
22
  VCR::ResponseStatus.should respond_to(:from_net_http_response)
23
23
  VCR::ResponseStatus.should_receive(:from_net_http_response).with(response).and_return(:the_status)
24
- subject.status.should == :the_status
24
+ subject.status.should eq(:the_status)
25
25
  end
26
26
  end
27
27
 
@@ -6,8 +6,8 @@ describe VCR::ResponseStatus do
6
6
  subject { described_class.from_net_http_response(response) }
7
7
 
8
8
  it { should be_instance_of(described_class) }
9
- its(:code) { should == 200 }
10
- its(:message) { should == 'OK' }
9
+ its(:code) { should eq(200) }
10
+ its(:message) { should eq('OK') }
11
11
  end
12
12
 
13
13
  it_performs 'status message normalization' do
@@ -18,7 +18,7 @@ describe VCR::CucumberTags do
18
18
  VCR.current_cassette.should be_nil
19
19
 
20
20
  before_blocks_for_tags[tag].call
21
- VCR.current_cassette.send(cassette_attribute).should == expected_value
21
+ VCR.current_cassette.send(cassette_attribute).should eq(expected_value)
22
22
  after_blocks_for_tags[tag].call
23
23
 
24
24
  VCR.current_cassette.should be_nil
@@ -54,7 +54,7 @@ describe VCR::CucumberTags do
54
54
  it 'returns the list of cucumber tags' do
55
55
  subject.tags 'tag1', 'tag2'
56
56
  subject.tags 'tag3', 'tag4'
57
- described_class.tags[-4, 4].should == %w(@tag1 @tag2 @tag3 @tag4)
57
+ described_class.tags[-4, 4].should eq(%w(@tag1 @tag2 @tag3 @tag4))
58
58
  end
59
59
  end
60
60
  end
@@ -7,20 +7,19 @@ describe VCR::RSpec::Macros do
7
7
  def self.perform_test(context_name, expected_cassette_name, *args, &block)
8
8
  context context_name do
9
9
  after(:each) do
10
- if @test_ejection
10
+ if example.metadata[:test_ejection]
11
11
  VCR.current_cassette.should be_nil
12
12
  end
13
13
  end
14
14
 
15
- use_vcr_cassette *args
15
+ use_vcr_cassette(*args)
16
16
 
17
- it 'ejects the cassette in an after hook' do
17
+ it 'ejects the cassette in an after hook', :test_ejection do
18
18
  VCR.current_cassette.should be_a(VCR::Cassette)
19
- @test_ejection = true
20
19
  end
21
20
 
22
21
  it "creates a cassette named '#{expected_cassette_name}" do
23
- VCR.current_cassette.name.should == expected_cassette_name
22
+ VCR.current_cassette.name.should eq(expected_cassette_name)
24
23
  end
25
24
 
26
25
  module_eval(&block) if block
@@ -31,7 +30,7 @@ describe VCR::RSpec::Macros do
31
30
 
32
31
  perform_test 'when called with an explicit name and some options', 'explicit_name', 'explicit_name', :match_requests_on => [:method, :host] do
33
32
  it 'uses the provided cassette options' do
34
- VCR.current_cassette.match_requests_on.should == [:method, :host]
33
+ VCR.current_cassette.match_requests_on.should eq([:method, :host])
35
34
  end
36
35
  end
37
36
 
@@ -39,7 +38,7 @@ describe VCR::RSpec::Macros do
39
38
 
40
39
  perform_test 'when called with some options', 'VCR::RSpec::Macros/#use_vcr_cassette/when called with some options', :match_requests_on => [:method, :host] do
41
40
  it 'uses the provided cassette options' do
42
- VCR.current_cassette.match_requests_on.should == [:method, :host]
41
+ VCR.current_cassette.match_requests_on.should eq([:method, :host])
43
42
  end
44
43
  end
45
44
  end