class FakeServer::Server
Attributes
logger[R]
remote_api[R]
Public Class Methods
new(host, log_file=nil)
click to toggle source
# File lib/fake_server/server.rb, line 7 def initialize(host, log_file=nil) @remote_api = RemoteAPI.new(host) @logger = Logger.new(log_file || STDOUT) end
Public Instance Methods
call(env)
click to toggle source
# File lib/fake_server/server.rb, line 14 def call(env) url = env["REQUEST_URI"] method = env["REQUEST_METHOD"] logger.info("#{method} #{url}") if method == "GET" name = cassette_name(url) logger.info("using cassette #{name}") VCR.use_cassette(name) { remote_api.request(method, url) } else remote_api.request(method, url) end end
Private Instance Methods
cassette_name(url)
click to toggle source
# File lib/fake_server/server.rb, line 31 def cassette_name(url) name = url.sub(/\/\z/, '') name.empty? ? "_root" : name end