vcr 2.5.0 → 2.6.0

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 (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