Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: 6ec77e4c30
Fetching contributors…

Cannot retrieve contributors at this time

44 lines (39 sloc) 1.173 kb
shared_examples_for "HelloWorld Rack application" do
it "is possible to fetch static assets" do
get('/rack.jpg').should == @stub.public_file('rack.jpg')
end
it "is possible to GET a regular Rack page" do
get('/').should =~ /hello/
end
it "supports responses with the 'chunked' transfer encoding" do
get('/chunked').should ==
"chunk1\n" +
"chunk2\n" +
"chunk3\n"
end
it "supports restarting via restart.txt" do
get('/').should =~ /hello/
File.write("#{@stub.app_root}/config.ru", %q{
app = lambda do |env|
[200, { "Content-Type" => "text/html" }, "changed"]
end
run app
})
File.new("#{@stub.app_root}/tmp/restart.txt", "w").close
File.utime(2, 2, "#{@stub.app_root}/tmp/restart.txt")
get('/').should == "changed"
end
if Process.uid == 0
it "runs as an unprivileged user" do
File.prepend("#{@stub.app_root}/config.ru", %q{
File.new('foo.txt', 'w').close
})
File.new("#{@stub.app_root}/tmp/restart.txt", "w").close
File.utime(1, 1, "#{@stub.app_root}/tmp/restart.txt")
get('/')
stat = File.stat("#{@stub.app_root}/foo.txt")
stat.uid.should_not == 0
stat.gid.should_not == 0
end
end
end
Jump to Line
Something went wrong with that request. Please try again.