vcr 1.4.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +23 -0
- data/Gemfile +0 -2
- data/Gemfile.lock +15 -14
- data/Guardfile +2 -3
- data/LICENSE +1 -1
- data/README.md +5 -1
- data/features/.nav +28 -0
- data/features/README.md +1 -1
- data/features/cassettes/automatic_re_recording.feature +2 -2
- data/features/cassettes/format.feature +2 -2
- data/features/cassettes/no_cassette.feature +3 -3
- data/features/cassettes/request_matching.feature +8 -8
- data/features/configuration/allow_http_connections_when_no_cassette.feature +1 -1
- data/features/configuration/cassette_library_dir.feature +1 -1
- data/features/configuration/default_cassette_options.feature +2 -2
- data/features/configuration/hooks.feature +276 -0
- data/features/configuration/ignore_localhost.feature +1 -1
- data/features/configuration/stub_with.feature +19 -20
- data/features/middleware/rack.feature +6 -6
- data/features/{cassettes/record_modes → record_modes}/all.feature +2 -2
- data/features/{cassettes/record_modes → record_modes}/new_episodes.feature +3 -3
- data/features/{cassettes/record_modes → record_modes}/none.feature +4 -4
- data/features/support/vcr_cucumber_helpers.rb +1 -1
- data/features/test_frameworks/cucumber.feature +11 -11
- data/features/test_frameworks/rspec.feature +12 -12
- data/features/test_frameworks/shoulda.feature +1 -1
- data/lib/vcr.rb +8 -4
- data/lib/vcr/cassette.rb +28 -39
- data/lib/vcr/cassette/reader.rb +58 -0
- data/lib/vcr/config.rb +45 -40
- data/lib/vcr/deprecations.rb +1 -1
- data/lib/vcr/extensions/net_http.rb +6 -1
- data/lib/vcr/hooks.rb +45 -0
- data/lib/vcr/http_stubbing_adapters/common.rb +16 -13
- data/lib/vcr/http_stubbing_adapters/fakeweb.rb +4 -4
- data/lib/vcr/http_stubbing_adapters/faraday.rb +4 -4
- data/lib/vcr/http_stubbing_adapters/typhoeus.rb +4 -4
- data/lib/vcr/http_stubbing_adapters/webmock.rb +4 -4
- data/lib/vcr/structs.rb +8 -0
- data/lib/vcr/{basic_object.rb → util/basic_object.rb} +0 -0
- data/lib/vcr/{internet_connection.rb → util/internet_connection.rb} +1 -1
- data/lib/vcr/{ping.rb → util/ping.rb} +0 -0
- data/lib/vcr/version.rb +1 -1
- data/script/FullBuildRakeFile +6 -0
- data/script/full_build +1 -1
- data/script/spec +1 -0
- data/spec/fixtures/1.9.1/cassette_spec/empty.yml +0 -0
- data/spec/fixtures/not_1.9.1/cassette_spec/empty.yml +0 -0
- data/spec/spec_helper.rb +7 -4
- data/spec/support/http_library_adapters.rb +8 -0
- data/spec/support/http_stubbing_adapter.rb +2 -2
- data/spec/vcr/cassette/reader_spec.rb +59 -0
- data/spec/{cassette_spec.rb → vcr/cassette_spec.rb} +115 -54
- data/spec/{config_spec.rb → vcr/config_spec.rb} +0 -0
- data/spec/{cucumber_tags_spec.rb → vcr/cucumber_tags_spec.rb} +0 -0
- data/spec/{deprecations_spec.rb → vcr/deprecations_spec.rb} +0 -0
- data/spec/{extensions → vcr/extensions}/net_http_response_spec.rb +0 -0
- data/spec/{extensions → vcr/extensions}/net_http_spec.rb +0 -0
- data/spec/vcr/hooks_spec.rb +95 -0
- data/spec/{http_stubbing_adapters → vcr/http_stubbing_adapters}/fakeweb_spec.rb +0 -0
- data/spec/{http_stubbing_adapters → vcr/http_stubbing_adapters}/faraday_spec.rb +5 -3
- data/spec/{http_stubbing_adapters → vcr/http_stubbing_adapters}/multi_object_proxy_spec.rb +0 -0
- data/spec/{http_stubbing_adapters → vcr/http_stubbing_adapters}/typhoeus_spec.rb +0 -0
- data/spec/{http_stubbing_adapters → vcr/http_stubbing_adapters}/webmock_spec.rb +0 -0
- data/spec/{middleware → vcr/middleware}/cassette_arguments_spec.rb +0 -0
- data/spec/{middleware → vcr/middleware}/faraday_spec.rb +0 -0
- data/spec/{middleware → vcr/middleware}/rack_spec.rb +0 -0
- data/spec/{request_matcher_spec.rb → vcr/request_matcher_spec.rb} +0 -0
- data/spec/{rspec_spec.rb → vcr/rspec_spec.rb} +0 -0
- data/spec/{structs_spec.rb → vcr/structs_spec.rb} +15 -4
- data/spec/{internet_connection_spec.rb → vcr/util/internet_connection_spec.rb} +0 -0
- data/spec/{version_spec.rb → vcr/version_spec.rb} +0 -0
- data/spec/vcr_spec.rb +10 -3
- data/vcr.gemspec +3 -3
- metadata +123 -101
- data/spec/fixtures/1.9.1/cassette_spec/erb_with_no_vars.yml +0 -32
- data/spec/fixtures/1.9.1/cassette_spec/erb_with_vars.yml +0 -32
- data/spec/fixtures/not_1.9.1/cassette_spec/erb_with_no_vars.yml +0 -32
- data/spec/fixtures/not_1.9.1/cassette_spec/erb_with_vars.yml +0 -32
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe VCR::Hooks do
|
4
|
+
class HooksClass
|
5
|
+
include VCR::Hooks
|
6
|
+
end
|
7
|
+
|
8
|
+
subject { HooksClass.new }
|
9
|
+
let(:invocations) { [] }
|
10
|
+
|
11
|
+
before(:each) do
|
12
|
+
subject.instance_eval do
|
13
|
+
define_hook :before_foo
|
14
|
+
define_hook :before_bar
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
describe '#clear_hooks' do
|
19
|
+
it 'clears all hooks' do
|
20
|
+
subject.before_foo { invocations << :callback }
|
21
|
+
subject.clear_hooks
|
22
|
+
subject.invoke_hook(:before_foo, nil)
|
23
|
+
invocations.should be_empty
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
describe '#invoke_hook(:before_foo)' do
|
28
|
+
context 'with a tag argument' do
|
29
|
+
it 'invokes each of the :before_foo callbacks with a matching tag' do
|
30
|
+
subject.before_foo(:green) { invocations << :callback_1 }
|
31
|
+
subject.before_foo(:green) { invocations << :callback_2 }
|
32
|
+
|
33
|
+
invocations.should be_empty
|
34
|
+
subject.invoke_hook(:before_foo, :green)
|
35
|
+
invocations.should == [:callback_1, :callback_2]
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'invokes each of the :before_foo callbacks with no tag' do
|
39
|
+
subject.before_foo { invocations << :no_tag_1 }
|
40
|
+
subject.before_foo { invocations << :no_tag_2 }
|
41
|
+
|
42
|
+
subject.invoke_hook(:before_foo, :green)
|
43
|
+
invocations.should == [:no_tag_1, :no_tag_2]
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'does not invoke any callbacks with a different tag' do
|
47
|
+
subject.before_foo(:blue) { invocations << :blue_callback }
|
48
|
+
subject.invoke_hook(:before_foo, :green)
|
49
|
+
invocations.should be_empty
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
context 'without a tag argument' do
|
54
|
+
it 'invokes each of the :before_foo callbacks' do
|
55
|
+
subject.before_foo { invocations << :callback_1 }
|
56
|
+
subject.before_foo { invocations << :callback_2 }
|
57
|
+
|
58
|
+
invocations.should be_empty
|
59
|
+
subject.invoke_hook(:before_foo, nil)
|
60
|
+
invocations.should == [:callback_1, :callback_2]
|
61
|
+
end
|
62
|
+
|
63
|
+
it 'does not invoke :before_bar callbacks' do
|
64
|
+
subject.before_bar { invocations << :bar_callback }
|
65
|
+
subject.invoke_hook(:before_foo, nil)
|
66
|
+
invocations.should be_empty
|
67
|
+
end
|
68
|
+
|
69
|
+
it 'does not invoke any tagged callbacks' do
|
70
|
+
subject.before_foo(:blue) { invocations << :blue_callback }
|
71
|
+
subject.invoke_hook(:before_foo, nil)
|
72
|
+
invocations.should be_empty
|
73
|
+
end
|
74
|
+
|
75
|
+
it 'passes along the provided arguments to the callback' do
|
76
|
+
subject.before_foo { |a, b| invocations << [a, b] }
|
77
|
+
subject.invoke_hook(:before_foo, nil, :arg1, :arg2)
|
78
|
+
invocations.flatten.should == [:arg1, :arg2]
|
79
|
+
end
|
80
|
+
|
81
|
+
it 'only passes along 1 argument when the block accepts only 1 arguments' do
|
82
|
+
subject.before_foo { |a| invocations << a }
|
83
|
+
subject.invoke_hook(:before_foo, nil, :arg1, :arg2)
|
84
|
+
invocations.flatten.should == [:arg1]
|
85
|
+
end
|
86
|
+
|
87
|
+
it 'passes along all arguments when the block accepts a variable number of args' do
|
88
|
+
subject.before_foo { |*a| invocations << a }
|
89
|
+
subject.invoke_hook(:before_foo, nil, :arg1, :arg2)
|
90
|
+
invocations.flatten.should == [:arg1, :arg2]
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
File without changes
|
@@ -61,8 +61,10 @@ describe VCR::HttpStubbingAdapters::Faraday do
|
|
61
61
|
end
|
62
62
|
|
63
63
|
describe '.restore_stubs_checkpoints' do
|
64
|
+
let(:cassette_1) { VCR::Cassette.new('1') }
|
65
|
+
|
64
66
|
before(:each) do
|
65
|
-
subject.create_stubs_checkpoint(
|
67
|
+
subject.create_stubs_checkpoint(cassette_1)
|
66
68
|
end
|
67
69
|
|
68
70
|
it 'restores the queues to the checkpoint state when a queue has additional responses' do
|
@@ -70,13 +72,13 @@ describe VCR::HttpStubbingAdapters::Faraday do
|
|
70
72
|
VCR::HTTPInteraction.new(request_1, :response_3),
|
71
73
|
], match_attributes)
|
72
74
|
|
73
|
-
subject.restore_stubs_checkpoint(
|
75
|
+
subject.restore_stubs_checkpoint(cassette_1)
|
74
76
|
test_stubbed_responses
|
75
77
|
end
|
76
78
|
|
77
79
|
it 'restores the queues to the checkpoint state when a queue has been used' do
|
78
80
|
stubbed_response_for(request_1)
|
79
|
-
subject.restore_stubs_checkpoint(
|
81
|
+
subject.restore_stubs_checkpoint(cassette_1)
|
80
82
|
test_stubbed_responses
|
81
83
|
end
|
82
84
|
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -73,8 +73,8 @@ describe VCR::Request do
|
|
73
73
|
end
|
74
74
|
|
75
75
|
describe '.from_net_http_request' do
|
76
|
-
let(:net_http) { YAML.load(File.read(
|
77
|
-
let(:request) { YAML.load(File.read(
|
76
|
+
let(:net_http) { YAML.load(File.read("#{VCR::SPEC_ROOT}/fixtures/#{YAML_SERIALIZATION_VERSION}/example_net_http.yml")) }
|
77
|
+
let(:request) { YAML.load(File.read("#{VCR::SPEC_ROOT}/fixtures/#{YAML_SERIALIZATION_VERSION}/example_net_http_request.yml")) }
|
78
78
|
subject { described_class.from_net_http_request(net_http, request) }
|
79
79
|
|
80
80
|
before(:each) do
|
@@ -108,7 +108,7 @@ end
|
|
108
108
|
|
109
109
|
describe VCR::ResponseStatus do
|
110
110
|
describe '.from_net_http_response' do
|
111
|
-
let(:response) { YAML.load(File.read(
|
111
|
+
let(:response) { YAML.load(File.read("#{VCR::SPEC_ROOT}/fixtures/#{YAML_SERIALIZATION_VERSION}/example_net_http_response.yml")) }
|
112
112
|
subject { described_class.from_net_http_response(response) }
|
113
113
|
|
114
114
|
it { should be_instance_of(described_class) }
|
@@ -128,7 +128,7 @@ end
|
|
128
128
|
|
129
129
|
describe VCR::Response do
|
130
130
|
describe '.from_net_http_response' do
|
131
|
-
let(:response) { YAML.load(File.read(
|
131
|
+
let(:response) { YAML.load(File.read("#{VCR::SPEC_ROOT}/fixtures/#{YAML_SERIALIZATION_VERSION}/example_net_http_response.yml")) }
|
132
132
|
subject { described_class.from_net_http_response(response) }
|
133
133
|
|
134
134
|
it { should be_instance_of(described_class) }
|
@@ -173,4 +173,15 @@ describe VCR::HTTPInteraction do
|
|
173
173
|
instance.send(attr).should == :the_value
|
174
174
|
end
|
175
175
|
end
|
176
|
+
|
177
|
+
describe '#ignored?' do
|
178
|
+
it 'returns false by default' do
|
179
|
+
should_not be_ignored
|
180
|
+
end
|
181
|
+
|
182
|
+
it 'returns true when #ignore! has been called' do
|
183
|
+
subject.ignore!
|
184
|
+
should be_ignored
|
185
|
+
end
|
186
|
+
end
|
176
187
|
end
|
File without changes
|
File without changes
|
data/spec/vcr_spec.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe VCR do
|
4
|
-
def insert_cassette
|
5
|
-
VCR.insert_cassette(
|
4
|
+
def insert_cassette(name = :cassette_test)
|
5
|
+
VCR.insert_cassette(name)
|
6
6
|
end
|
7
7
|
|
8
8
|
describe '.insert_cassette' do
|
@@ -16,6 +16,13 @@ describe VCR do
|
|
16
16
|
new_cassette.should_not == orig_cassette
|
17
17
|
VCR.current_cassette.should == new_cassette
|
18
18
|
end
|
19
|
+
|
20
|
+
it 'raises an error if the stack of inserted cassettes already contains a cassette with the same name' do
|
21
|
+
insert_cassette(:foo)
|
22
|
+
expect {
|
23
|
+
insert_cassette(:foo)
|
24
|
+
}.to raise_error(/There is already a cassette with the same name/)
|
25
|
+
end
|
19
26
|
end
|
20
27
|
|
21
28
|
describe '.eject_cassette' do
|
@@ -31,7 +38,7 @@ describe VCR do
|
|
31
38
|
end
|
32
39
|
|
33
40
|
it 'returns the #current_cassette to the previous one' do
|
34
|
-
cassette1, cassette2 = insert_cassette, insert_cassette
|
41
|
+
cassette1, cassette2 = insert_cassette(:foo1), insert_cassette(:foo2)
|
35
42
|
expect { VCR.eject_cassette }.to change(VCR, :current_cassette).from(cassette2).to(cassette1)
|
36
43
|
end
|
37
44
|
end
|
data/vcr.gemspec
CHANGED
@@ -10,8 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.email = "myron.marston@gmail.com"
|
11
11
|
s.require_path = "lib"
|
12
12
|
s.files = `git ls-files`.split("\n")
|
13
|
-
s.test_files = `git ls-files -- {
|
14
|
-
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
13
|
+
s.test_files = `git ls-files -- {spec,features}/*`.split("\n")
|
15
14
|
|
16
15
|
s.version = VCR.version
|
17
16
|
s.platform = Gem::Platform::RUBY
|
@@ -22,9 +21,10 @@ Gem::Specification.new do |s|
|
|
22
21
|
'bundler' => '~> 1.0.7',
|
23
22
|
'rake' => '~> 0.8.7',
|
24
23
|
|
25
|
-
'rspec' => '~> 2.
|
24
|
+
'rspec' => '~> 2.4.0',
|
26
25
|
'cucumber' => '~> 0.9.4',
|
27
26
|
'aruba' => '~> 0.2.1',
|
27
|
+
'shoulda' => '~> 2.9.2',
|
28
28
|
|
29
29
|
'fakeweb' => '~> 1.3.0',
|
30
30
|
'webmock' => '~> 1.6.0',
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vcr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 3
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
8
|
+
- 5
|
9
9
|
- 0
|
10
|
-
version: 1.
|
10
|
+
version: 1.5.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Myron Marston
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2011-01-12 00:00:00 -08:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -30,10 +30,10 @@ dependencies:
|
|
30
30
|
- 5
|
31
31
|
- 3
|
32
32
|
version: 0.5.3
|
33
|
-
type: :development
|
34
33
|
name: faraday
|
35
34
|
prerelease: false
|
36
35
|
version_requirements: *id001
|
36
|
+
type: :development
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
requirement: &id002 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
@@ -46,10 +46,10 @@ dependencies:
|
|
46
46
|
- 3
|
47
47
|
- 0
|
48
48
|
version: 1.3.0
|
49
|
-
type: :development
|
50
49
|
name: fakeweb
|
51
50
|
prerelease: false
|
52
51
|
version_requirements: *id002
|
52
|
+
type: :development
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
requirement: &id003 !ruby/object:Gem::Requirement
|
55
55
|
none: false
|
@@ -63,10 +63,10 @@ dependencies:
|
|
63
63
|
- 5
|
64
64
|
- 2
|
65
65
|
version: 2.1.5.2
|
66
|
-
type: :development
|
67
66
|
name: httpclient
|
68
67
|
prerelease: false
|
69
68
|
version_requirements: *id003
|
69
|
+
type: :development
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
requirement: &id004 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
@@ -79,10 +79,10 @@ dependencies:
|
|
79
79
|
- 8
|
80
80
|
- 7
|
81
81
|
version: 0.8.7
|
82
|
-
type: :development
|
83
82
|
name: rake
|
84
83
|
prerelease: false
|
85
84
|
version_requirements: *id004
|
85
|
+
type: :development
|
86
86
|
- !ruby/object:Gem::Dependency
|
87
87
|
requirement: &id005 !ruby/object:Gem::Requirement
|
88
88
|
none: false
|
@@ -95,28 +95,44 @@ dependencies:
|
|
95
95
|
- 3
|
96
96
|
- 5
|
97
97
|
version: 0.3.5
|
98
|
-
type: :development
|
99
98
|
name: timecop
|
100
99
|
prerelease: false
|
101
100
|
version_requirements: *id005
|
101
|
+
type: :development
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
requirement: &id006 !ruby/object:Gem::Requirement
|
104
104
|
none: false
|
105
105
|
requirements:
|
106
106
|
- - ~>
|
107
107
|
- !ruby/object:Gem::Version
|
108
|
-
hash:
|
108
|
+
hash: 47
|
109
109
|
segments:
|
110
110
|
- 2
|
111
|
-
-
|
112
|
-
-
|
113
|
-
version: 2.
|
114
|
-
|
115
|
-
name: rspec
|
111
|
+
- 9
|
112
|
+
- 2
|
113
|
+
version: 2.9.2
|
114
|
+
name: shoulda
|
116
115
|
prerelease: false
|
117
116
|
version_requirements: *id006
|
117
|
+
type: :development
|
118
118
|
- !ruby/object:Gem::Dependency
|
119
119
|
requirement: &id007 !ruby/object:Gem::Requirement
|
120
|
+
none: false
|
121
|
+
requirements:
|
122
|
+
- - ~>
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
hash: 31
|
125
|
+
segments:
|
126
|
+
- 2
|
127
|
+
- 4
|
128
|
+
- 0
|
129
|
+
version: 2.4.0
|
130
|
+
name: rspec
|
131
|
+
prerelease: false
|
132
|
+
version_requirements: *id007
|
133
|
+
type: :development
|
134
|
+
- !ruby/object:Gem::Dependency
|
135
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
120
136
|
none: false
|
121
137
|
requirements:
|
122
138
|
- - "="
|
@@ -127,12 +143,12 @@ dependencies:
|
|
127
143
|
- 1
|
128
144
|
- 0
|
129
145
|
version: 1.1.0
|
130
|
-
type: :development
|
131
146
|
name: rack
|
132
147
|
prerelease: false
|
133
|
-
version_requirements: *
|
148
|
+
version_requirements: *id008
|
149
|
+
type: :development
|
134
150
|
- !ruby/object:Gem::Dependency
|
135
|
-
requirement: &
|
151
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
136
152
|
none: false
|
137
153
|
requirements:
|
138
154
|
- - ~>
|
@@ -143,12 +159,12 @@ dependencies:
|
|
143
159
|
- 2
|
144
160
|
- 1
|
145
161
|
version: 0.2.1
|
146
|
-
type: :development
|
147
162
|
name: aruba
|
148
163
|
prerelease: false
|
149
|
-
version_requirements: *
|
164
|
+
version_requirements: *id009
|
165
|
+
type: :development
|
150
166
|
- !ruby/object:Gem::Dependency
|
151
|
-
requirement: &
|
167
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
152
168
|
none: false
|
153
169
|
requirements:
|
154
170
|
- - ~>
|
@@ -159,12 +175,12 @@ dependencies:
|
|
159
175
|
- 1
|
160
176
|
- 0
|
161
177
|
version: 1.1.0
|
162
|
-
type: :development
|
163
178
|
name: sinatra
|
164
179
|
prerelease: false
|
165
|
-
version_requirements: *
|
180
|
+
version_requirements: *id010
|
181
|
+
type: :development
|
166
182
|
- !ruby/object:Gem::Dependency
|
167
|
-
requirement: &
|
183
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
168
184
|
none: false
|
169
185
|
requirements:
|
170
186
|
- - ~>
|
@@ -175,12 +191,12 @@ dependencies:
|
|
175
191
|
- 0
|
176
192
|
- 7
|
177
193
|
version: 1.0.7
|
178
|
-
type: :development
|
179
194
|
name: bundler
|
180
195
|
prerelease: false
|
181
|
-
version_requirements: *
|
196
|
+
version_requirements: *id011
|
197
|
+
type: :development
|
182
198
|
- !ruby/object:Gem::Dependency
|
183
|
-
requirement: &
|
199
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
184
200
|
none: false
|
185
201
|
requirements:
|
186
202
|
- - ~>
|
@@ -191,12 +207,12 @@ dependencies:
|
|
191
207
|
- 9
|
192
208
|
- 4
|
193
209
|
version: 0.9.4
|
194
|
-
type: :development
|
195
210
|
name: cucumber
|
196
211
|
prerelease: false
|
197
|
-
version_requirements: *
|
212
|
+
version_requirements: *id012
|
213
|
+
type: :development
|
198
214
|
- !ruby/object:Gem::Dependency
|
199
|
-
requirement: &
|
215
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
200
216
|
none: false
|
201
217
|
requirements:
|
202
218
|
- - ~>
|
@@ -207,12 +223,12 @@ dependencies:
|
|
207
223
|
- 6
|
208
224
|
- 0
|
209
225
|
version: 1.6.0
|
210
|
-
type: :development
|
211
226
|
name: webmock
|
212
227
|
prerelease: false
|
213
|
-
version_requirements: *
|
228
|
+
version_requirements: *id013
|
229
|
+
type: :development
|
214
230
|
- !ruby/object:Gem::Dependency
|
215
|
-
requirement: &
|
231
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
216
232
|
none: false
|
217
233
|
requirements:
|
218
234
|
- - ~>
|
@@ -223,12 +239,12 @@ dependencies:
|
|
223
239
|
- 7
|
224
240
|
- 8
|
225
241
|
version: 0.7.8
|
226
|
-
type: :development
|
227
242
|
name: curb
|
228
243
|
prerelease: false
|
229
|
-
version_requirements: *
|
244
|
+
version_requirements: *id014
|
245
|
+
type: :development
|
230
246
|
- !ruby/object:Gem::Dependency
|
231
|
-
requirement: &
|
247
|
+
requirement: &id015 !ruby/object:Gem::Requirement
|
232
248
|
none: false
|
233
249
|
requirements:
|
234
250
|
- - ~>
|
@@ -239,12 +255,12 @@ dependencies:
|
|
239
255
|
- 4
|
240
256
|
- 6
|
241
257
|
version: 0.4.6
|
242
|
-
type: :development
|
243
258
|
name: patron
|
244
259
|
prerelease: false
|
245
|
-
version_requirements: *
|
260
|
+
version_requirements: *id015
|
261
|
+
type: :development
|
246
262
|
- !ruby/object:Gem::Dependency
|
247
|
-
requirement: &
|
263
|
+
requirement: &id016 !ruby/object:Gem::Requirement
|
248
264
|
none: false
|
249
265
|
requirements:
|
250
266
|
- - ~>
|
@@ -255,12 +271,12 @@ dependencies:
|
|
255
271
|
- 2
|
256
272
|
- 7
|
257
273
|
version: 0.2.7
|
258
|
-
type: :development
|
259
274
|
name: em-http-request
|
260
275
|
prerelease: false
|
261
|
-
version_requirements: *
|
276
|
+
version_requirements: *id016
|
277
|
+
type: :development
|
262
278
|
- !ruby/object:Gem::Dependency
|
263
|
-
requirement: &
|
279
|
+
requirement: &id017 !ruby/object:Gem::Requirement
|
264
280
|
none: false
|
265
281
|
requirements:
|
266
282
|
- - ~>
|
@@ -271,10 +287,10 @@ dependencies:
|
|
271
287
|
- 2
|
272
288
|
- 0
|
273
289
|
version: 0.2.0
|
274
|
-
type: :development
|
275
290
|
name: typhoeus
|
276
291
|
prerelease: false
|
277
|
-
version_requirements: *
|
292
|
+
version_requirements: *id017
|
293
|
+
type: :development
|
278
294
|
description: VCR provides helpers to record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests. It works with any ruby testing framework, and provides built-in support for cucumber.
|
279
295
|
email: myron.marston@gmail.com
|
280
296
|
executables: []
|
@@ -298,24 +314,26 @@ files:
|
|
298
314
|
- TODO.md
|
299
315
|
- benchmarks/http_stubbing_libraries.rb
|
300
316
|
- cucumber.yml
|
317
|
+
- features/.nav
|
301
318
|
- features/README.md
|
302
319
|
- features/cassettes/automatic_re_recording.feature
|
303
320
|
- features/cassettes/dynamic_erb.feature
|
304
321
|
- features/cassettes/format.feature
|
305
322
|
- features/cassettes/no_cassette.feature
|
306
|
-
- features/cassettes/record_modes/all.feature
|
307
|
-
- features/cassettes/record_modes/new_episodes.feature
|
308
|
-
- features/cassettes/record_modes/none.feature
|
309
323
|
- features/cassettes/request_matching.feature
|
310
324
|
- features/configuration/allow_http_connections_when_no_cassette.feature
|
311
325
|
- features/configuration/cassette_library_dir.feature
|
312
326
|
- features/configuration/default_cassette_options.feature
|
327
|
+
- features/configuration/hooks.feature
|
313
328
|
- features/configuration/ignore_localhost.feature
|
314
329
|
- features/configuration/stub_with.feature
|
315
330
|
- features/http_libraries/em_http_request.feature
|
316
331
|
- features/http_libraries/net_http.feature
|
317
332
|
- features/middleware/faraday.feature
|
318
333
|
- features/middleware/rack.feature
|
334
|
+
- features/record_modes/all.feature
|
335
|
+
- features/record_modes/new_episodes.feature
|
336
|
+
- features/record_modes/none.feature
|
319
337
|
- features/step_definitions/cli_steps.rb
|
320
338
|
- features/support/aruba_workaround/aruba_patches.rb
|
321
339
|
- features/support/aruba_workaround/background_process.rb
|
@@ -327,40 +345,36 @@ files:
|
|
327
345
|
- features/test_frameworks/shoulda.feature
|
328
346
|
- features/test_frameworks/test_unit.feature
|
329
347
|
- lib/vcr.rb
|
330
|
-
- lib/vcr/basic_object.rb
|
331
348
|
- lib/vcr/cassette.rb
|
349
|
+
- lib/vcr/cassette/reader.rb
|
332
350
|
- lib/vcr/config.rb
|
333
351
|
- lib/vcr/cucumber_tags.rb
|
334
352
|
- lib/vcr/deprecations.rb
|
335
353
|
- lib/vcr/extensions/net_http.rb
|
336
354
|
- lib/vcr/extensions/net_http_response.rb
|
355
|
+
- lib/vcr/hooks.rb
|
337
356
|
- lib/vcr/http_stubbing_adapters/common.rb
|
338
357
|
- lib/vcr/http_stubbing_adapters/fakeweb.rb
|
339
358
|
- lib/vcr/http_stubbing_adapters/faraday.rb
|
340
359
|
- lib/vcr/http_stubbing_adapters/multi_object_proxy.rb
|
341
360
|
- lib/vcr/http_stubbing_adapters/typhoeus.rb
|
342
361
|
- lib/vcr/http_stubbing_adapters/webmock.rb
|
343
|
-
- lib/vcr/internet_connection.rb
|
344
362
|
- lib/vcr/middleware/cassette_arguments.rb
|
345
363
|
- lib/vcr/middleware/common.rb
|
346
364
|
- lib/vcr/middleware/faraday.rb
|
347
365
|
- lib/vcr/middleware/rack.rb
|
348
|
-
- lib/vcr/ping.rb
|
349
366
|
- lib/vcr/request_matcher.rb
|
350
367
|
- lib/vcr/rspec.rb
|
351
368
|
- lib/vcr/structs.rb
|
369
|
+
- lib/vcr/util/basic_object.rb
|
370
|
+
- lib/vcr/util/internet_connection.rb
|
371
|
+
- lib/vcr/util/ping.rb
|
352
372
|
- lib/vcr/version.rb
|
353
373
|
- script/FullBuildRakeFile
|
354
374
|
- script/full_build
|
355
|
-
- spec
|
356
|
-
- spec/config_spec.rb
|
357
|
-
- spec/cucumber_tags_spec.rb
|
358
|
-
- spec/deprecations_spec.rb
|
359
|
-
- spec/extensions/net_http_response_spec.rb
|
360
|
-
- spec/extensions/net_http_spec.rb
|
375
|
+
- script/spec
|
361
376
|
- spec/fixtures/1.9.1/0_3_1_cassette.yml
|
362
|
-
- spec/fixtures/1.9.1/cassette_spec/
|
363
|
-
- spec/fixtures/1.9.1/cassette_spec/erb_with_vars.yml
|
377
|
+
- spec/fixtures/1.9.1/cassette_spec/empty.yml
|
364
378
|
- spec/fixtures/1.9.1/cassette_spec/example.yml
|
365
379
|
- spec/fixtures/1.9.1/cassette_spec/with_localhost_requests.yml
|
366
380
|
- spec/fixtures/1.9.1/example_net_http.yml
|
@@ -369,8 +383,7 @@ files:
|
|
369
383
|
- spec/fixtures/1.9.1/fake_example.com_responses.yml
|
370
384
|
- spec/fixtures/1.9.1/match_requests_on.yml
|
371
385
|
- spec/fixtures/not_1.9.1/0_3_1_cassette.yml
|
372
|
-
- spec/fixtures/not_1.9.1/cassette_spec/
|
373
|
-
- spec/fixtures/not_1.9.1/cassette_spec/erb_with_vars.yml
|
386
|
+
- spec/fixtures/not_1.9.1/cassette_spec/empty.yml
|
374
387
|
- spec/fixtures/not_1.9.1/cassette_spec/example.yml
|
375
388
|
- spec/fixtures/not_1.9.1/cassette_spec/with_localhost_requests.yml
|
376
389
|
- spec/fixtures/not_1.9.1/example_net_http.yml
|
@@ -378,20 +391,8 @@ files:
|
|
378
391
|
- spec/fixtures/not_1.9.1/example_net_http_response.yml
|
379
392
|
- spec/fixtures/not_1.9.1/fake_example.com_responses.yml
|
380
393
|
- spec/fixtures/not_1.9.1/match_requests_on.yml
|
381
|
-
- spec/http_stubbing_adapters/fakeweb_spec.rb
|
382
|
-
- spec/http_stubbing_adapters/faraday_spec.rb
|
383
|
-
- spec/http_stubbing_adapters/multi_object_proxy_spec.rb
|
384
|
-
- spec/http_stubbing_adapters/typhoeus_spec.rb
|
385
|
-
- spec/http_stubbing_adapters/webmock_spec.rb
|
386
|
-
- spec/internet_connection_spec.rb
|
387
|
-
- spec/middleware/cassette_arguments_spec.rb
|
388
|
-
- spec/middleware/faraday_spec.rb
|
389
|
-
- spec/middleware/rack_spec.rb
|
390
394
|
- spec/monkey_patches.rb
|
391
|
-
- spec/request_matcher_spec.rb
|
392
|
-
- spec/rspec_spec.rb
|
393
395
|
- spec/spec_helper.rb
|
394
|
-
- spec/structs_spec.rb
|
395
396
|
- spec/support/disable_warnings.rb
|
396
397
|
- spec/support/fixnum_extension.rb
|
397
398
|
- spec/support/http_library_adapters.rb
|
@@ -402,8 +403,28 @@ files:
|
|
402
403
|
- spec/support/vcr_localhost_server.rb
|
403
404
|
- spec/support/version_checker.rb
|
404
405
|
- spec/support/webmock_macros.rb
|
406
|
+
- spec/vcr/cassette/reader_spec.rb
|
407
|
+
- spec/vcr/cassette_spec.rb
|
408
|
+
- spec/vcr/config_spec.rb
|
409
|
+
- spec/vcr/cucumber_tags_spec.rb
|
410
|
+
- spec/vcr/deprecations_spec.rb
|
411
|
+
- spec/vcr/extensions/net_http_response_spec.rb
|
412
|
+
- spec/vcr/extensions/net_http_spec.rb
|
413
|
+
- spec/vcr/hooks_spec.rb
|
414
|
+
- spec/vcr/http_stubbing_adapters/fakeweb_spec.rb
|
415
|
+
- spec/vcr/http_stubbing_adapters/faraday_spec.rb
|
416
|
+
- spec/vcr/http_stubbing_adapters/multi_object_proxy_spec.rb
|
417
|
+
- spec/vcr/http_stubbing_adapters/typhoeus_spec.rb
|
418
|
+
- spec/vcr/http_stubbing_adapters/webmock_spec.rb
|
419
|
+
- spec/vcr/middleware/cassette_arguments_spec.rb
|
420
|
+
- spec/vcr/middleware/faraday_spec.rb
|
421
|
+
- spec/vcr/middleware/rack_spec.rb
|
422
|
+
- spec/vcr/request_matcher_spec.rb
|
423
|
+
- spec/vcr/rspec_spec.rb
|
424
|
+
- spec/vcr/structs_spec.rb
|
425
|
+
- spec/vcr/util/internet_connection_spec.rb
|
426
|
+
- spec/vcr/version_spec.rb
|
405
427
|
- spec/vcr_spec.rb
|
406
|
-
- spec/version_spec.rb
|
407
428
|
- vcr.gemspec
|
408
429
|
has_rdoc: true
|
409
430
|
homepage: http://github.com/myronmarston/vcr
|
@@ -439,7 +460,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
439
460
|
requirements: []
|
440
461
|
|
441
462
|
rubyforge_project:
|
442
|
-
rubygems_version: 1.
|
463
|
+
rubygems_version: 1.4.1
|
443
464
|
signing_key:
|
444
465
|
specification_version: 3
|
445
466
|
summary: Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.
|
@@ -449,19 +470,20 @@ test_files:
|
|
449
470
|
- features/cassettes/dynamic_erb.feature
|
450
471
|
- features/cassettes/format.feature
|
451
472
|
- features/cassettes/no_cassette.feature
|
452
|
-
- features/cassettes/record_modes/all.feature
|
453
|
-
- features/cassettes/record_modes/new_episodes.feature
|
454
|
-
- features/cassettes/record_modes/none.feature
|
455
473
|
- features/cassettes/request_matching.feature
|
456
474
|
- features/configuration/allow_http_connections_when_no_cassette.feature
|
457
475
|
- features/configuration/cassette_library_dir.feature
|
458
476
|
- features/configuration/default_cassette_options.feature
|
477
|
+
- features/configuration/hooks.feature
|
459
478
|
- features/configuration/ignore_localhost.feature
|
460
479
|
- features/configuration/stub_with.feature
|
461
480
|
- features/http_libraries/em_http_request.feature
|
462
481
|
- features/http_libraries/net_http.feature
|
463
482
|
- features/middleware/faraday.feature
|
464
483
|
- features/middleware/rack.feature
|
484
|
+
- features/record_modes/all.feature
|
485
|
+
- features/record_modes/new_episodes.feature
|
486
|
+
- features/record_modes/none.feature
|
465
487
|
- features/step_definitions/cli_steps.rb
|
466
488
|
- features/support/aruba_workaround/aruba_patches.rb
|
467
489
|
- features/support/aruba_workaround/background_process.rb
|
@@ -472,15 +494,8 @@ test_files:
|
|
472
494
|
- features/test_frameworks/rspec.feature
|
473
495
|
- features/test_frameworks/shoulda.feature
|
474
496
|
- features/test_frameworks/test_unit.feature
|
475
|
-
- spec/cassette_spec.rb
|
476
|
-
- spec/config_spec.rb
|
477
|
-
- spec/cucumber_tags_spec.rb
|
478
|
-
- spec/deprecations_spec.rb
|
479
|
-
- spec/extensions/net_http_response_spec.rb
|
480
|
-
- spec/extensions/net_http_spec.rb
|
481
497
|
- spec/fixtures/1.9.1/0_3_1_cassette.yml
|
482
|
-
- spec/fixtures/1.9.1/cassette_spec/
|
483
|
-
- spec/fixtures/1.9.1/cassette_spec/erb_with_vars.yml
|
498
|
+
- spec/fixtures/1.9.1/cassette_spec/empty.yml
|
484
499
|
- spec/fixtures/1.9.1/cassette_spec/example.yml
|
485
500
|
- spec/fixtures/1.9.1/cassette_spec/with_localhost_requests.yml
|
486
501
|
- spec/fixtures/1.9.1/example_net_http.yml
|
@@ -489,8 +504,7 @@ test_files:
|
|
489
504
|
- spec/fixtures/1.9.1/fake_example.com_responses.yml
|
490
505
|
- spec/fixtures/1.9.1/match_requests_on.yml
|
491
506
|
- spec/fixtures/not_1.9.1/0_3_1_cassette.yml
|
492
|
-
- spec/fixtures/not_1.9.1/cassette_spec/
|
493
|
-
- spec/fixtures/not_1.9.1/cassette_spec/erb_with_vars.yml
|
507
|
+
- spec/fixtures/not_1.9.1/cassette_spec/empty.yml
|
494
508
|
- spec/fixtures/not_1.9.1/cassette_spec/example.yml
|
495
509
|
- spec/fixtures/not_1.9.1/cassette_spec/with_localhost_requests.yml
|
496
510
|
- spec/fixtures/not_1.9.1/example_net_http.yml
|
@@ -498,20 +512,8 @@ test_files:
|
|
498
512
|
- spec/fixtures/not_1.9.1/example_net_http_response.yml
|
499
513
|
- spec/fixtures/not_1.9.1/fake_example.com_responses.yml
|
500
514
|
- spec/fixtures/not_1.9.1/match_requests_on.yml
|
501
|
-
- spec/http_stubbing_adapters/fakeweb_spec.rb
|
502
|
-
- spec/http_stubbing_adapters/faraday_spec.rb
|
503
|
-
- spec/http_stubbing_adapters/multi_object_proxy_spec.rb
|
504
|
-
- spec/http_stubbing_adapters/typhoeus_spec.rb
|
505
|
-
- spec/http_stubbing_adapters/webmock_spec.rb
|
506
|
-
- spec/internet_connection_spec.rb
|
507
|
-
- spec/middleware/cassette_arguments_spec.rb
|
508
|
-
- spec/middleware/faraday_spec.rb
|
509
|
-
- spec/middleware/rack_spec.rb
|
510
515
|
- spec/monkey_patches.rb
|
511
|
-
- spec/request_matcher_spec.rb
|
512
|
-
- spec/rspec_spec.rb
|
513
516
|
- spec/spec_helper.rb
|
514
|
-
- spec/structs_spec.rb
|
515
517
|
- spec/support/disable_warnings.rb
|
516
518
|
- spec/support/fixnum_extension.rb
|
517
519
|
- spec/support/http_library_adapters.rb
|
@@ -522,5 +524,25 @@ test_files:
|
|
522
524
|
- spec/support/vcr_localhost_server.rb
|
523
525
|
- spec/support/version_checker.rb
|
524
526
|
- spec/support/webmock_macros.rb
|
527
|
+
- spec/vcr/cassette/reader_spec.rb
|
528
|
+
- spec/vcr/cassette_spec.rb
|
529
|
+
- spec/vcr/config_spec.rb
|
530
|
+
- spec/vcr/cucumber_tags_spec.rb
|
531
|
+
- spec/vcr/deprecations_spec.rb
|
532
|
+
- spec/vcr/extensions/net_http_response_spec.rb
|
533
|
+
- spec/vcr/extensions/net_http_spec.rb
|
534
|
+
- spec/vcr/hooks_spec.rb
|
535
|
+
- spec/vcr/http_stubbing_adapters/fakeweb_spec.rb
|
536
|
+
- spec/vcr/http_stubbing_adapters/faraday_spec.rb
|
537
|
+
- spec/vcr/http_stubbing_adapters/multi_object_proxy_spec.rb
|
538
|
+
- spec/vcr/http_stubbing_adapters/typhoeus_spec.rb
|
539
|
+
- spec/vcr/http_stubbing_adapters/webmock_spec.rb
|
540
|
+
- spec/vcr/middleware/cassette_arguments_spec.rb
|
541
|
+
- spec/vcr/middleware/faraday_spec.rb
|
542
|
+
- spec/vcr/middleware/rack_spec.rb
|
543
|
+
- spec/vcr/request_matcher_spec.rb
|
544
|
+
- spec/vcr/rspec_spec.rb
|
545
|
+
- spec/vcr/structs_spec.rb
|
546
|
+
- spec/vcr/util/internet_connection_spec.rb
|
547
|
+
- spec/vcr/version_spec.rb
|
525
548
|
- spec/vcr_spec.rb
|
526
|
-
- spec/version_spec.rb
|