File tree Expand file tree Collapse file tree 2 files changed +32
-1
lines changed Expand file tree Collapse file tree 2 files changed +32
-1
lines changed Original file line number Diff line number Diff line change @@ -212,6 +212,14 @@ def format_foot_note(url, index)
212
212
"https://benoittgt.github.io/vcr/?v=%s#/record_modes/none"
213
213
] ,
214
214
215
+ :none_without_file => [
216
+ [ "The current record mode (:none) does not allow requests to be recorded." ,
217
+ "One or more cassette names registered was not found. Use " ,
218
+ ":new_episodes or :once record modes to record a new cassette" ] ,
219
+ "https://benoittgt.github.io/vcr/?v=%s#/record_modes/none"
220
+ ] ,
221
+
222
+
215
223
:use_a_cassette => [
216
224
[ "If you want VCR to record this request and play it back during future test" ,
217
225
"runs, you should wrap your test (or this portion of your test) in a" ,
@@ -284,14 +292,22 @@ def record_mode_suggestion
284
292
record_modes = current_cassettes . map ( &:record_mode )
285
293
286
294
if record_modes . all? { |r | r == :none }
287
- [ :deal_with_none ]
295
+ none_suggestion
288
296
elsif record_modes . all? { |r | r == :once }
289
297
[ :delete_cassette_for_once ]
290
298
else
291
299
[ ]
292
300
end
293
301
end
294
302
303
+ def none_suggestion
304
+ if current_cassettes . any? { |c | !File . exist? ( c . file ) }
305
+ [ :none_without_file ]
306
+ else
307
+ [ :deal_with_none ]
308
+ end
309
+ end
310
+
295
311
def has_used_interaction_matching?
296
312
current_cassettes . any? { |c | c . http_interactions . has_used_interaction_matching? ( request ) }
297
313
end
Original file line number Diff line number Diff line change @@ -120,6 +120,21 @@ def request_with(options)
120
120
end
121
121
end
122
122
123
+ it 'mentions that one of the files does not exist when using :none and file does not exist' do
124
+ VCR . use_cassette ( 'example' , :record => :none ) do
125
+ expect ( message ) . to include ( 'One or more cassette names registered was not found.' )
126
+ end
127
+ end
128
+
129
+ it 'mentions legacy message when file exists' do
130
+ VCR . configure do |c |
131
+ c . cassette_library_dir = File . join ( VCR ::SPEC_ROOT , 'fixtures' )
132
+ end
133
+ VCR . use_cassette ( 'fake_example_responses' , :record => :none ) do
134
+ expect ( message ) . to include ( 'can temporarily change the record mode to :once, delete the cassette file' )
135
+ end
136
+ end
137
+
123
138
it 'does not mention the :once or :none record modes if using the :new_episodes record mode' do
124
139
VCR . use_cassette ( 'example' , :record => :new_episodes ) do
125
140
expect ( message ) . not_to include ( ':once' , ':none' )
You can’t perform that action at this time.
0 commit comments