32
32
# to false when first recording a 3rd party interaction. After
33
33
# the recording has been stored to cache_path, then set
34
34
# non_whitelisted_requests_disabled back to true.
35
- c . non_whitelisted_requests_disabled = true
35
+ #
36
+ # To enable recording new responses temporarily, run the individual spec
37
+ # and prepend with BILLY_RECORDING set to true:
38
+ # BILLY_RECORDING=true bin/rspec spec/features/user_upgrades_spec.rb
39
+ prevent_recording = ( 'true' != ENV [ 'BILLY_RECORDING' ] )
40
+ c . non_whitelisted_requests_disabled = prevent_recording
36
41
end
37
42
38
43
# https://github.com/oesmith/puffing-billy#working-with-vcr-and-webmock
43
48
44
49
def handled_by_billy? ( request )
45
50
# browser_referer?(request)
46
- browser_user_agent? ( request )
51
+ browser_user_agent? ( request ) && browser_test_in_progress?
47
52
end
48
53
49
54
def browser_user_agent? ( request )
50
55
user_agent = !request . headers [ "User-Agent" ] . blank? && request . headers [ "User-Agent" ] . first
51
- is_real_browser_user_agent = user_agent != "Ruby"
56
+ user_agent != "Ruby"
57
+ end
58
+
59
+ def browser_test_in_progress?
60
+ Capybara . current_driver != :rack_test
52
61
end
53
62
54
63
# def allowed_referers
@@ -61,7 +70,7 @@ def browser_user_agent?(request)
61
70
62
71
# def browser_referer?(request)
63
72
# referer = !request.headers["Referer"].blank? && request.headers["Referer"].first
64
- # handled = referer && allowed_referers.any? { |pattern| pattern =~ referer }
73
+ # referer && allowed_referers.any? { |pattern| pattern =~ referer }
65
74
# end
66
75
end
67
76
0 commit comments