sinatra/test/integration/app.rb

63 lines
929 B
Ruby
Raw Normal View History

$stderr.puts "loading"
2011-10-31 21:40:22 +00:00
require 'sinatra'
configure do
set :foo, :bar
end
2011-10-31 21:40:22 +00:00
get '/app_file' do
content_type :txt
settings.app_file
end
get '/ping' do
'pong'
end
2012-03-07 21:58:59 +00:00
get '/stream' do
stream do |out|
sleep 0.1
out << "a"
sleep 1.2
out << "b"
end
end
get '/mainonly' do
object = Object.new
begin
object.send(:get, '/foo') { }
'false'
rescue NameError
'true'
end
end
2012-03-08 08:57:08 +00:00
set :out, nil
get '/async' do
stream(:keep_open) { |o| (settings.out = o) << "hi!" }
end
get '/send' do
settings.out << params[:msg] if params[:msg]
settings.out.close if params[:close]
"ok"
end
class Subclass < Sinatra::Base
set :out, nil
get '/subclass/async' do
2012-03-11 09:45:54 +00:00
stream(:keep_open) { |o| (settings.out = o) << "hi!" }
2012-03-08 08:57:08 +00:00
end
get '/subclass/send' do
settings.out << params[:msg] if params[:msg]
settings.out.close if params[:close]
"ok"
end
end
use Subclass
$stderr.puts "starting"