Sha256: 879fc5aede6bfa1dbdcb792e94f42518f44229666dc862384a8034bfe6145e2b
Contents?: true
Size: 1.37 KB
Versions: 8
Compression:
Stored size: 1.37 KB
Contents
require 'sinatra' module VCR class SinatraApp < ::Sinatra::Base disable :protection get '/' do "GET to root" end get '/search' do "query: #{params[:q]}" end get '/localhost_test' do "Localhost response" end get '/foo' do "FOO!" end post '/foo' do "FOO!" end get '/set-cookie-headers/1' do headers 'Set-Cookie' => 'foo' 'header set' end get '/set-cookie-headers/2' do headers 'Set-Cookie' => %w[ bar foo ] 'header set' end get '/204' do status 204 end # we use a global counter so that every response is different; # this ensures that the test demonstrates that the response # is being played back (and not running a 2nd real request) $record_and_playback_response_count ||= 0 get '/record-and-playback' do "Response #{$record_and_playback_response_count += 1}" end post '/record-and-playback' do "Response #{$record_and_playback_response_count += 1}" end @_boot_failed = false class << self def port server.port end def server raise "Sinatra app failed to boot." if @_boot_failed @server ||= begin VCR::LocalhostServer.new(new) rescue @_boot_failed = true raise end end alias boot server end end end
Version data entries
8 entries across 8 versions & 1 rubygems