Class: VCR::HttpStubbingAdapters::FakeWeb

Inherits:
Base
  • Object
show all
Defined in:
lib/vcr/http_stubbing_adapters/fakeweb.rb

Class Method Summary collapse

Methods inherited from Base

meets_version_requirement?, with_http_connections_allowed_set_to

Class Method Details

.check_version!Object



8
9
10
11
12
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 8

def check_version!
  unless meets_version_requirement?(::FakeWeb::VERSION, '1.2.8')
    raise "You are using FakeWeb #{::FakeWeb::VERSION}.  VCR requires version 1.2.8 or greater."
  end
end

.create_stubs_checkpoint(checkpoint_name) ⇒ Object



34
35
36
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 34

def create_stubs_checkpoint(checkpoint_name)
  checkpoints[checkpoint_name] = ::FakeWeb::Registry.instance.uri_map.dup
end

.http_connections_allowed=(value) ⇒ Object



18
19
20
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 18

def http_connections_allowed=(value)
  ::FakeWeb.allow_net_connect = value
end

.http_connections_allowed?Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 14

def http_connections_allowed?
  ::FakeWeb.allow_net_connect?
end

.request_stubbed?(method, uri) ⇒ Boolean

Returns:

  • (Boolean)


42
43
44
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 42

def request_stubbed?(method, uri)
  ::FakeWeb.registered_uri?(method, uri)
end

.request_uri(net_http, request) ⇒ Object



46
47
48
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 46

def request_uri(net_http, request)
  ::FakeWeb.request_uri(net_http, request)
end

.restore_stubs_checkpoint(checkpoint_name) ⇒ Object



38
39
40
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 38

def restore_stubs_checkpoint(checkpoint_name)
  ::FakeWeb::Registry.instance.uri_map = checkpoints.delete(checkpoint_name)
end

.stub_requests(http_interactions) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/vcr/http_stubbing_adapters/fakeweb.rb', line 22

def stub_requests(http_interactions)
  requests = Hash.new([])

  http_interactions.each do |i|
    requests[[i.request.method, i.request.uri]] += [i.response]
  end

  requests.each do |request, responses|
    ::FakeWeb.register_uri(request.first, request.last, responses.map{ |r| response_hash(r) })
  end
end