diff options
Diffstat (limited to 'lib/vendor/excon/tests/rackups/redirecting_with_cookie.ru')
-rw-r--r-- | lib/vendor/excon/tests/rackups/redirecting_with_cookie.ru | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/lib/vendor/excon/tests/rackups/redirecting_with_cookie.ru b/lib/vendor/excon/tests/rackups/redirecting_with_cookie.ru new file mode 100644 index 0000000..f0401f8 --- /dev/null +++ b/lib/vendor/excon/tests/rackups/redirecting_with_cookie.ru @@ -0,0 +1,40 @@ +require 'sinatra' +require 'sinatra/cookies' +require 'json' +require File.join(File.dirname(__FILE__), 'webrick_patch') + +class App < Sinatra::Base + helpers Sinatra::Cookies + set :environment, :production + enable :dump_errors + + get('/sets_cookie') do + cookies[:chocolatechip] = "chunky" + redirect "/requires_cookie" + end + + get('/requires_cookie') do + cookie = cookies[:chocolatechip] + unless cookie.nil? || cookie != "chunky" + "ok" + else + JSON.pretty_generate(headers) + end + end + + get('/sets_multi_cookie') do + cookies[:chocolatechip] = "chunky" + cookies[:thinmints] = "minty" + redirect "/requires_cookie" + end + + get('/requires_cookie') do + if cookies[:chocolatechip] == "chunky" && cookies[:thinmints] == "minty" + "ok" + else + JSON.pretty_generate(headers) + end + end +end + +run App |