vcr 2.5.0 → 2.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. checksums.yaml +8 -8
  2. data/.travis.yml +0 -3
  3. data/CHANGELOG.md +32 -3
  4. data/Gemfile +33 -0
  5. data/Gemfile.lock +99 -119
  6. data/README.md +19 -7
  7. data/Rakefile +5 -9
  8. data/benchmarks/null_logging.rb +62 -0
  9. data/features/.nav +0 -1
  10. data/features/about_these_examples.md +1 -2
  11. data/features/cassettes/allow_unused_http_interactions.feature +15 -1
  12. data/features/cassettes/decompress.feature +6 -2
  13. data/features/cassettes/format.feature +20 -12
  14. data/features/cassettes/freezing_time.feature +68 -0
  15. data/features/configuration/cassette_library_dir.feature +5 -0
  16. data/features/configuration/preserve_exact_body_bytes.feature +5 -0
  17. data/features/configuration/uri_parser.feature +2 -4
  18. data/features/http_libraries/net_http.feature +1 -1
  19. data/features/request_matching/headers.feature +0 -1
  20. data/features/step_definitions/cli_steps.rb +1 -4
  21. data/features/test_frameworks/cucumber.feature +59 -0
  22. data/features/test_frameworks/rspec_metadata.feature +59 -1
  23. data/gemfiles/typhoeus_old.gemfile +19 -0
  24. data/gemfiles/typhoeus_old.gemfile.lock +84 -86
  25. data/lib/vcr.rb +12 -3
  26. data/lib/vcr/cassette.rb +32 -11
  27. data/lib/vcr/cassette/http_interaction_list.rb +3 -2
  28. data/lib/vcr/cassette/migrator.rb +1 -0
  29. data/lib/vcr/cassette/serializers/json.rb +1 -1
  30. data/lib/vcr/configuration.rb +17 -9
  31. data/lib/vcr/library_hooks/typhoeus.rb +3 -2
  32. data/lib/vcr/library_hooks/webmock.rb +1 -1
  33. data/lib/vcr/middleware/excon.rb +13 -1
  34. data/lib/vcr/middleware/faraday.rb +1 -0
  35. data/lib/vcr/request_handler.rb +1 -1
  36. data/lib/vcr/structs.rb +19 -4
  37. data/lib/vcr/test_frameworks/cucumber.rb +2 -2
  38. data/lib/vcr/test_frameworks/rspec.rb +10 -2
  39. data/lib/vcr/util/logger.rb +41 -7
  40. data/lib/vcr/version.rb +1 -1
  41. data/script/ci.sh +8 -1
  42. data/spec/acceptance/threading_spec.rb +6 -0
  43. data/spec/capture_warnings.rb +9 -1
  44. data/spec/spec_helper.rb +6 -2
  45. data/spec/support/configuration_stubbing.rb +8 -0
  46. data/spec/support/http_library_adapters.rb +1 -1
  47. data/spec/support/limited_uri.rb +1 -0
  48. data/spec/support/shared_example_groups/excon.rb +23 -1
  49. data/spec/support/shared_example_groups/hook_into_http_library.rb +12 -12
  50. data/spec/support/shared_example_groups/request_hooks.rb +1 -1
  51. data/spec/support/sinatra_app.rb +9 -0
  52. data/spec/support/vcr_localhost_server.rb +4 -25
  53. data/spec/support/vcr_stub_helpers.rb +1 -1
  54. data/spec/vcr/cassette/http_interaction_list_spec.rb +41 -14
  55. data/spec/vcr/cassette/migrator_spec.rb +1 -1
  56. data/spec/vcr/cassette/persisters_spec.rb +2 -2
  57. data/spec/vcr/cassette/serializers_spec.rb +13 -4
  58. data/spec/vcr/cassette_spec.rb +107 -58
  59. data/spec/vcr/configuration_spec.rb +23 -23
  60. data/spec/vcr/deprecations_spec.rb +9 -9
  61. data/spec/vcr/errors_spec.rb +6 -6
  62. data/spec/vcr/library_hooks/excon_spec.rb +15 -10
  63. data/spec/vcr/library_hooks/fakeweb_spec.rb +8 -8
  64. data/spec/vcr/library_hooks/faraday_spec.rb +1 -1
  65. data/spec/vcr/library_hooks/typhoeus_0.4_spec.rb +2 -2
  66. data/spec/vcr/library_hooks/typhoeus_spec.rb +68 -9
  67. data/spec/vcr/library_hooks/webmock_spec.rb +6 -10
  68. data/spec/vcr/middleware/faraday_spec.rb +33 -5
  69. data/spec/vcr/middleware/rack_spec.rb +2 -2
  70. data/spec/vcr/request_matcher_registry_spec.rb +11 -6
  71. data/spec/vcr/structs_spec.rb +114 -47
  72. data/spec/vcr/test_frameworks/cucumber_spec.rb +4 -4
  73. data/spec/vcr/util/hooks_spec.rb +2 -2
  74. data/spec/vcr/util/internet_connection_spec.rb +3 -3
  75. data/spec/vcr/util/version_checker_spec.rb +4 -4
  76. data/spec/vcr_spec.rb +22 -16
  77. data/vcr.gemspec +2 -31
  78. metadata +9 -328
  79. data/features/test_frameworks/shoulda.feature +0 -64
@@ -6,7 +6,7 @@ describe VCR::CucumberTags do
6
6
  let(:after_blocks_for_tags) { {} }
7
7
 
8
8
  def scenario(name)
9
- stub(:name => name, :feature => stub(:name => "My feature name\nThe preamble text is not included"))
9
+ double(:name => name, :feature => double(:name => "My feature name\nThe preamble text is not included"), :failed? => false)
10
10
  end
11
11
 
12
12
  let(:current_scenario) { scenario "My scenario name\nThe preamble text is not included" }
@@ -64,8 +64,8 @@ describe VCR::CucumberTags do
64
64
  it "makes a unique name for each element of scenario outline" do
65
65
  subject.send(tag_method, 'tag1', :use_scenario_name => true)
66
66
 
67
- scenario_with_outline = stub(:name => "My row name",
68
- :scenario_outline => stub(:feature => stub(:name => "My feature name\nThe preamble text is not included"),
67
+ scenario_with_outline = double(:name => "My row name", :failed? => false,
68
+ :scenario_outline => double(:feature => double(:name => "My feature name\nThe preamble text is not included"),
69
69
  :name => "My scenario outline name"))
70
70
  test_tag(:name, 'tag1', 'My feature name/My scenario outline name/My row name', scenario_with_outline)
71
71
  end
@@ -73,7 +73,7 @@ describe VCR::CucumberTags do
73
73
  it 'does not pass :use_scenario_name along the given options to the cassette' do
74
74
  subject.send(tag_method, 'tag1', :use_scenario_name => true)
75
75
 
76
- VCR::Cassette.should_receive(:new).with(anything, hash_not_including(:use_scenario_name))
76
+ expect(VCR::Cassette).to receive(:new).with(anything, hash_not_including(:use_scenario_name))
77
77
  before_blocks_for_tags['tag1'].call(current_scenario)
78
78
  end
79
79
 
@@ -68,7 +68,7 @@ describe VCR::Hooks::FilteredHook do
68
68
  it '#to_procs the filter objects' do
69
69
  filter_called = false
70
70
  subject.hook = lambda { }
71
- subject.filters = [stub(:to_proc => lambda { filter_called = true })]
71
+ subject.filters = [double(:to_proc => lambda { filter_called = true })]
72
72
  subject.conditionally_invoke
73
73
  expect(filter_called).to be_true
74
74
  end
@@ -129,7 +129,7 @@ describe VCR::Hooks do
129
129
 
130
130
  it 'does not invoke any filtered callbacks' do
131
131
  subject.before_foo(:real?) { invocations << :blue_callback }
132
- subject.invoke_hook(:before_foo, stub(:real? => false))
132
+ subject.invoke_hook(:before_foo, double(:real? => false))
133
133
  expect(invocations).to be_empty
134
134
  end
135
135
 
@@ -7,7 +7,7 @@ describe VCR::InternetConnection do
7
7
  end
8
8
 
9
9
  def stub_pingecho_with(value)
10
- VCR::Ping.stub(:pingecho).with("example.com", anything, anything).and_return(value)
10
+ allow(VCR::Ping).to receive(:pingecho).with("example.com", anything, anything).and_return(value)
11
11
  end
12
12
 
13
13
  context 'when pinging example.com succeeds' do
@@ -17,7 +17,7 @@ describe VCR::InternetConnection do
17
17
  end
18
18
 
19
19
  it 'memoizes the value so no extra pings are made' do
20
- VCR::Ping.should_receive(:pingecho).once.and_return(true)
20
+ expect(VCR::Ping).to receive(:pingecho).once.and_return(true)
21
21
  3.times { described_class.available? }
22
22
  end
23
23
  end
@@ -29,7 +29,7 @@ describe VCR::InternetConnection do
29
29
  end
30
30
 
31
31
  it 'memoizes the value so no extra pings are made' do
32
- VCR::Ping.should_receive(:pingecho).once.and_return(false)
32
+ expect(VCR::Ping).to receive(:pingecho).once.and_return(false)
33
33
  3.times { described_class.available? }
34
34
  end
35
35
  end
@@ -19,25 +19,25 @@ module VCR
19
19
 
20
20
  it 'prints a warning if the major version is too high' do
21
21
  checker = VersionChecker.new('foo', '2.0.0', '1.0.0', '1.1')
22
- Kernel.should_receive(:warn).with(/may not work with this version/)
22
+ expect(Kernel).to receive(:warn).with(/may not work with this version/)
23
23
  checker.check_version!
24
24
  end
25
25
 
26
26
  it 'prints a warning if the minor version is too high' do
27
27
  checker = VersionChecker.new('foo', '1.2.0', '1.0.0', '1.1')
28
- Kernel.should_receive(:warn).with(/may not work with this version/)
28
+ expect(Kernel).to receive(:warn).with(/may not work with this version/)
29
29
  checker.check_version!
30
30
  end
31
31
 
32
32
  it 'does not raise an error or print a warning when the major version is between the min and max' do
33
33
  checker = VersionChecker.new('foo', '2.0.0', '1.0.0', '3.0')
34
- Kernel.should_not_receive(:warn)
34
+ expect(Kernel).not_to receive(:warn)
35
35
  checker.check_version!
36
36
  end
37
37
 
38
38
  it 'does not raise an error or print a warning when the min_patch is 0.6.5, the max_minor is 0.7 and the version is 0.7.3' do
39
39
  checker = VersionChecker.new('foo', '0.7.3', '0.6.5', '0.7')
40
- Kernel.should_not_receive(:warn)
40
+ expect(Kernel).not_to receive(:warn)
41
41
  checker.check_version!
42
42
  end
43
43
  end
data/spec/vcr_spec.rb CHANGED
@@ -28,10 +28,16 @@ describe VCR do
28
28
  describe '.eject_cassette' do
29
29
  it 'ejects the current cassette' do
30
30
  cassette = insert_cassette
31
- cassette.should_receive(:eject)
31
+ expect(cassette).to receive(:eject)
32
32
  VCR.eject_cassette
33
33
  end
34
34
 
35
+ it 'forwards the given options to `Cassette#eject`' do
36
+ cassette = insert_cassette
37
+ expect(cassette).to receive(:eject).with(:some => :options)
38
+ VCR.eject_cassette(:some => :options)
39
+ end
40
+
35
41
  it 'returns the ejected cassette' do
36
42
  cassette = insert_cassette
37
43
  expect(VCR.eject_cassette).to eq(cassette)
@@ -45,7 +51,7 @@ describe VCR do
45
51
  it 'keeps the cassette as the current one until after #eject has finished' do
46
52
  cassette = insert_cassette
47
53
  current = nil
48
- cassette.stub(:eject) { current = VCR.current_cassette }
54
+ allow(cassette).to receive(:eject) { current = VCR.current_cassette }
49
55
 
50
56
  VCR.eject_cassette
51
57
 
@@ -55,7 +61,7 @@ describe VCR do
55
61
 
56
62
  it 'properly pops the cassette off the stack even if an error occurs' do
57
63
  cassette = insert_cassette
58
- cassette.stub(:eject) { raise "boom" }
64
+ allow(cassette).to receive(:eject) { raise "boom" }
59
65
  expect { VCR.eject_cassette }.to raise_error("boom")
60
66
  expect(VCR.current_cassette).to be_nil
61
67
  end
@@ -64,7 +70,7 @@ describe VCR do
64
70
  describe '.use_cassette' do
65
71
  it 'inserts a new cassette' do
66
72
  new_cassette = VCR::Cassette.new(:use_cassette_test)
67
- VCR.should_receive(:insert_cassette).and_return(new_cassette)
73
+ expect(VCR).to receive(:insert_cassette).and_return(new_cassette)
68
74
  VCR.use_cassette(:cassette_test) { }
69
75
  end
70
76
 
@@ -88,18 +94,18 @@ describe VCR do
88
94
  end
89
95
 
90
96
  it 'ejects the cassette' do
91
- VCR.should_receive(:eject_cassette)
97
+ expect(VCR).to receive(:eject_cassette)
92
98
  VCR.use_cassette(:cassette_test) { }
93
99
  end
94
100
 
95
101
  it 'ejects the cassette even if there is an error' do
96
- VCR.should_receive(:eject_cassette)
102
+ expect(VCR).to receive(:eject_cassette)
97
103
  expect { VCR.use_cassette(:cassette_test) { raise StandardError } }.to raise_error
98
104
  end
99
105
 
100
106
  it 'does not eject a cassette if there was an error inserting it' do
101
- VCR.should_receive(:insert_cassette).and_raise(StandardError.new('Boom!'))
102
- VCR.should_not_receive(:eject_cassette)
107
+ expect(VCR).to receive(:insert_cassette).and_raise(StandardError.new('Boom!'))
108
+ expect(VCR).not_to receive(:eject_cassette)
103
109
  expect { VCR.use_cassette(:test) { } }.to raise_error(StandardError, 'Boom!')
104
110
  end
105
111
 
@@ -228,8 +234,8 @@ describe VCR do
228
234
  end
229
235
 
230
236
  describe '.record_http_interaction' do
231
- before(:each) { VCR.stub(:current_cassette => current_cassette) }
232
- let(:interaction) { stub(:request => stub) }
237
+ before(:each) { allow(VCR).to receive(:current_cassette).and_return(current_cassette) }
238
+ let(:interaction) { double(:request => double) }
233
239
 
234
240
  context 'when there is not a current cassette' do
235
241
  let(:current_cassette) { nil }
@@ -242,17 +248,17 @@ describe VCR do
242
248
  end
243
249
 
244
250
  context 'when there is a current cassette' do
245
- let(:current_cassette) { mock('current cassette') }
251
+ let(:current_cassette) { double('current cassette') }
246
252
 
247
253
  it 'records the request when it should not be ignored' do
248
- VCR.request_ignorer.stub(:ignore?).with(interaction.request).and_return(false)
249
- current_cassette.should_receive(:record_http_interaction).with(interaction)
254
+ allow(VCR.request_ignorer).to receive(:ignore?).with(interaction.request).and_return(false)
255
+ expect(current_cassette).to receive(:record_http_interaction).with(interaction)
250
256
  VCR.record_http_interaction(interaction)
251
257
  end
252
258
 
253
259
  it 'does not record the request when it should be ignored' do
254
- VCR.request_ignorer.stub(:ignore?).with(interaction.request).and_return(true)
255
- current_cassette.should_not_receive(:record_http_interaction)
260
+ allow(VCR.request_ignorer).to receive(:ignore?).with(interaction.request).and_return(true)
261
+ expect(current_cassette).not_to receive(:record_http_interaction)
256
262
  VCR.record_http_interaction(interaction)
257
263
  end
258
264
  end
@@ -329,7 +335,7 @@ describe VCR do
329
335
  end
330
336
 
331
337
  it 'passes options through to .turn_off!' do
332
- VCR.should_receive(:turn_off!).with(:ignore_cassettes => true)
338
+ expect(VCR).to receive(:turn_off!).with(:ignore_cassettes => true)
333
339
  VCR.turned_off(:ignore_cassettes => true) { }
334
340
  end
335
341
  end
data/vcr.gemspec CHANGED
@@ -18,35 +18,6 @@ Gem::Specification.new do |s|
18
18
  s.required_ruby_version = '>= 1.8.7'
19
19
  s.required_rubygems_version = '>= 1.3.5'
20
20
 
21
- s.add_development_dependency 'bundler', '>= 1.0.7'
22
- s.add_development_dependency 'rake', '~> 0.9.2'
23
-
24
- s.add_development_dependency 'cucumber', '~> 1.1.4'
25
- s.add_development_dependency 'aruba', '~> 0.4.11'
26
-
27
- s.add_development_dependency 'rspec', '~> 2.11'
28
- s.add_development_dependency 'shoulda', '~> 2.9.2'
29
-
30
- s.add_development_dependency 'fakeweb', '~> 1.3.0'
31
- s.add_development_dependency 'webmock', '~> 1.10'
32
-
33
- s.add_development_dependency 'faraday', '~> 0.8'
34
- s.add_development_dependency 'httpclient', '~> 2.2'
35
- s.add_development_dependency 'excon', '~> 0.22'
36
-
37
- s.add_development_dependency 'timecop', '~> 0.3.5'
38
- s.add_development_dependency 'rack', '~> 1.3.6'
39
- s.add_development_dependency 'sinatra', '~> 1.3.2'
40
- s.add_development_dependency 'multi_json', '~> 1.0.3'
41
- s.add_development_dependency 'json', '~> 1.6.5'
42
- s.add_development_dependency 'simplecov', '~> 0.5.3'
43
- s.add_development_dependency 'redis', '~> 2.2.2'
44
- s.add_development_dependency 'typhoeus', '~> 0.6'
45
-
46
- unless RUBY_PLATFORM == 'java'
47
- s.add_development_dependency 'patron', '~> 0.4.15'
48
- s.add_development_dependency 'em-http-request', '~> 1.0.2'
49
- s.add_development_dependency 'curb', '~> 0.8.0'
50
- s.add_development_dependency 'yajl-ruby', '~> 1.1.0'
51
- end
21
+ # Development dependencies are listed in the Gemfile.
52
22
  end
23
+
metadata CHANGED
@@ -1,337 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vcr
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0
4
+ version: 2.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Myron Marston
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-18 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ! '>='
18
- - !ruby/object:Gem::Version
19
- version: 1.0.7
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ! '>='
25
- - !ruby/object:Gem::Version
26
- version: 1.0.7
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ~>
32
- - !ruby/object:Gem::Version
33
- version: 0.9.2
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ~>
39
- - !ruby/object:Gem::Version
40
- version: 0.9.2
41
- - !ruby/object:Gem::Dependency
42
- name: cucumber
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ~>
46
- - !ruby/object:Gem::Version
47
- version: 1.1.4
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ~>
53
- - !ruby/object:Gem::Version
54
- version: 1.1.4
55
- - !ruby/object:Gem::Dependency
56
- name: aruba
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: 0.4.11
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ~>
67
- - !ruby/object:Gem::Version
68
- version: 0.4.11
69
- - !ruby/object:Gem::Dependency
70
- name: rspec
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ~>
74
- - !ruby/object:Gem::Version
75
- version: '2.11'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ~>
81
- - !ruby/object:Gem::Version
82
- version: '2.11'
83
- - !ruby/object:Gem::Dependency
84
- name: shoulda
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ~>
88
- - !ruby/object:Gem::Version
89
- version: 2.9.2
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ~>
95
- - !ruby/object:Gem::Version
96
- version: 2.9.2
97
- - !ruby/object:Gem::Dependency
98
- name: fakeweb
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ~>
102
- - !ruby/object:Gem::Version
103
- version: 1.3.0
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ~>
109
- - !ruby/object:Gem::Version
110
- version: 1.3.0
111
- - !ruby/object:Gem::Dependency
112
- name: webmock
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ~>
116
- - !ruby/object:Gem::Version
117
- version: '1.10'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ~>
123
- - !ruby/object:Gem::Version
124
- version: '1.10'
125
- - !ruby/object:Gem::Dependency
126
- name: faraday
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ~>
130
- - !ruby/object:Gem::Version
131
- version: '0.8'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ~>
137
- - !ruby/object:Gem::Version
138
- version: '0.8'
139
- - !ruby/object:Gem::Dependency
140
- name: httpclient
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ~>
144
- - !ruby/object:Gem::Version
145
- version: '2.2'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ~>
151
- - !ruby/object:Gem::Version
152
- version: '2.2'
153
- - !ruby/object:Gem::Dependency
154
- name: excon
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ~>
158
- - !ruby/object:Gem::Version
159
- version: '0.22'
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - ~>
165
- - !ruby/object:Gem::Version
166
- version: '0.22'
167
- - !ruby/object:Gem::Dependency
168
- name: timecop
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ~>
172
- - !ruby/object:Gem::Version
173
- version: 0.3.5
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - ~>
179
- - !ruby/object:Gem::Version
180
- version: 0.3.5
181
- - !ruby/object:Gem::Dependency
182
- name: rack
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ~>
186
- - !ruby/object:Gem::Version
187
- version: 1.3.6
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ~>
193
- - !ruby/object:Gem::Version
194
- version: 1.3.6
195
- - !ruby/object:Gem::Dependency
196
- name: sinatra
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - ~>
200
- - !ruby/object:Gem::Version
201
- version: 1.3.2
202
- type: :development
203
- prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - ~>
207
- - !ruby/object:Gem::Version
208
- version: 1.3.2
209
- - !ruby/object:Gem::Dependency
210
- name: multi_json
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - ~>
214
- - !ruby/object:Gem::Version
215
- version: 1.0.3
216
- type: :development
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
- requirements:
220
- - - ~>
221
- - !ruby/object:Gem::Version
222
- version: 1.0.3
223
- - !ruby/object:Gem::Dependency
224
- name: json
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ~>
228
- - !ruby/object:Gem::Version
229
- version: 1.6.5
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - ~>
235
- - !ruby/object:Gem::Version
236
- version: 1.6.5
237
- - !ruby/object:Gem::Dependency
238
- name: simplecov
239
- requirement: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - ~>
242
- - !ruby/object:Gem::Version
243
- version: 0.5.3
244
- type: :development
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - ~>
249
- - !ruby/object:Gem::Version
250
- version: 0.5.3
251
- - !ruby/object:Gem::Dependency
252
- name: redis
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - ~>
256
- - !ruby/object:Gem::Version
257
- version: 2.2.2
258
- type: :development
259
- prerelease: false
260
- version_requirements: !ruby/object:Gem::Requirement
261
- requirements:
262
- - - ~>
263
- - !ruby/object:Gem::Version
264
- version: 2.2.2
265
- - !ruby/object:Gem::Dependency
266
- name: typhoeus
267
- requirement: !ruby/object:Gem::Requirement
268
- requirements:
269
- - - ~>
270
- - !ruby/object:Gem::Version
271
- version: '0.6'
272
- type: :development
273
- prerelease: false
274
- version_requirements: !ruby/object:Gem::Requirement
275
- requirements:
276
- - - ~>
277
- - !ruby/object:Gem::Version
278
- version: '0.6'
279
- - !ruby/object:Gem::Dependency
280
- name: patron
281
- requirement: !ruby/object:Gem::Requirement
282
- requirements:
283
- - - ~>
284
- - !ruby/object:Gem::Version
285
- version: 0.4.15
286
- type: :development
287
- prerelease: false
288
- version_requirements: !ruby/object:Gem::Requirement
289
- requirements:
290
- - - ~>
291
- - !ruby/object:Gem::Version
292
- version: 0.4.15
293
- - !ruby/object:Gem::Dependency
294
- name: em-http-request
295
- requirement: !ruby/object:Gem::Requirement
296
- requirements:
297
- - - ~>
298
- - !ruby/object:Gem::Version
299
- version: 1.0.2
300
- type: :development
301
- prerelease: false
302
- version_requirements: !ruby/object:Gem::Requirement
303
- requirements:
304
- - - ~>
305
- - !ruby/object:Gem::Version
306
- version: 1.0.2
307
- - !ruby/object:Gem::Dependency
308
- name: curb
309
- requirement: !ruby/object:Gem::Requirement
310
- requirements:
311
- - - ~>
312
- - !ruby/object:Gem::Version
313
- version: 0.8.0
314
- type: :development
315
- prerelease: false
316
- version_requirements: !ruby/object:Gem::Requirement
317
- requirements:
318
- - - ~>
319
- - !ruby/object:Gem::Version
320
- version: 0.8.0
321
- - !ruby/object:Gem::Dependency
322
- name: yajl-ruby
323
- requirement: !ruby/object:Gem::Requirement
324
- requirements:
325
- - - ~>
326
- - !ruby/object:Gem::Version
327
- version: 1.1.0
328
- type: :development
329
- prerelease: false
330
- version_requirements: !ruby/object:Gem::Requirement
331
- requirements:
332
- - - ~>
333
- - !ruby/object:Gem::Version
334
- version: 1.1.0
11
+ date: 2013-09-26 00:00:00.000000000 Z
12
+ dependencies: []
335
13
  description: VCR provides a simple API to record and replay your test suite's HTTP
336
14
  interactions. It works with a variety of HTTP client libraries, HTTP stubbing libraries
337
15
  and testing frameworks.
@@ -357,6 +35,7 @@ files:
357
35
  - Rakefile
358
36
  - Upgrade.md
359
37
  - benchmarks/http_stubbing_libraries.rb
38
+ - benchmarks/null_logging.rb
360
39
  - cucumber.yml
361
40
  - features/.nav
362
41
  - features/about_these_examples.md
@@ -366,6 +45,7 @@ files:
366
45
  - features/cassettes/dynamic_erb.feature
367
46
  - features/cassettes/exclusive.feature
368
47
  - features/cassettes/format.feature
48
+ - features/cassettes/freezing_time.feature
369
49
  - features/cassettes/naming.feature
370
50
  - features/cassettes/no_cassette.feature
371
51
  - features/cassettes/persistence.feature
@@ -413,7 +93,6 @@ files:
413
93
  - features/test_frameworks/cucumber.feature
414
94
  - features/test_frameworks/rspec_macro.feature
415
95
  - features/test_frameworks/rspec_metadata.feature
416
- - features/test_frameworks/shoulda.feature
417
96
  - features/test_frameworks/test_unit.feature
418
97
  - gemfiles/typhoeus_old.gemfile
419
98
  - gemfiles/typhoeus_old.gemfile.lock
@@ -468,6 +147,7 @@ files:
468
147
  - spec/monkey_patches.rb
469
148
  - spec/quality_spec.rb
470
149
  - spec/spec_helper.rb
150
+ - spec/support/configuration_stubbing.rb
471
151
  - spec/support/fixnum_extension.rb
472
152
  - spec/support/http_library_adapters.rb
473
153
  - spec/support/limited_uri.rb
@@ -529,7 +209,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
529
209
  version: 1.3.5
530
210
  requirements: []
531
211
  rubyforge_project:
532
- rubygems_version: 2.0.3
212
+ rubygems_version: 2.0.7
533
213
  signing_key:
534
214
  specification_version: 4
535
215
  summary: Record your test suite's HTTP interactions and replay them during future
@@ -542,6 +222,7 @@ test_files:
542
222
  - features/cassettes/dynamic_erb.feature
543
223
  - features/cassettes/exclusive.feature
544
224
  - features/cassettes/format.feature
225
+ - features/cassettes/freezing_time.feature
545
226
  - features/cassettes/naming.feature
546
227
  - features/cassettes/no_cassette.feature
547
228
  - features/cassettes/persistence.feature
@@ -589,7 +270,6 @@ test_files:
589
270
  - features/test_frameworks/cucumber.feature
590
271
  - features/test_frameworks/rspec_macro.feature
591
272
  - features/test_frameworks/rspec_metadata.feature
592
- - features/test_frameworks/shoulda.feature
593
273
  - features/test_frameworks/test_unit.feature
594
274
  - spec/acceptance/threading_spec.rb
595
275
  - spec/capture_warnings.rb
@@ -602,6 +282,7 @@ test_files:
602
282
  - spec/monkey_patches.rb
603
283
  - spec/quality_spec.rb
604
284
  - spec/spec_helper.rb
285
+ - spec/support/configuration_stubbing.rb
605
286
  - spec/support/fixnum_extension.rb
606
287
  - spec/support/http_library_adapters.rb
607
288
  - spec/support/limited_uri.rb