diff --git a/lib/sinatra/base.rb b/lib/sinatra/base.rb index 02881fc1..74442c45 100644 --- a/lib/sinatra/base.rb +++ b/lib/sinatra/base.rb @@ -1171,7 +1171,7 @@ module Sinatra def quit!(server, handler_name) # Use Thin's hard #stop! if available, otherwise just #stop. server.respond_to?(:stop!) ? server.stop! : server.stop - STDERR.puts "\n== Sinatra has ended his set (crowd applauds)" unless handler_name =~/cgi/i + $stderr.puts "\n== Sinatra has ended his set (crowd applauds)" unless handler_name =~/cgi/i end # Run the Sinatra app as a self-hosted server using @@ -1180,14 +1180,14 @@ module Sinatra set options handler = detect_rack_handler handler_name = handler.name.gsub(/.*::/, '') - STDERR.puts "== Sinatra/#{Sinatra::VERSION} has taken the stage " + + $stderr.puts "== Sinatra/#{Sinatra::VERSION} has taken the stage " + "on #{port} for #{environment} with backup from #{handler_name}" unless handler_name =~/cgi/i handler.run self, :Host => bind, :Port => port do |server| [:INT, :TERM].each { |sig| trap(sig) { quit!(server, handler_name) } } set :running, true end rescue Errno::EADDRINUSE => e - STDERR.puts "== Someone is already performing on port #{port}!" + $stderr.puts "== Someone is already performing on port #{port}!" end # The prototype instance used to process requests. diff --git a/test/server_test.rb b/test/server_test.rb index ee5a192a..d4ebdd4d 100644 --- a/test/server_test.rb +++ b/test/server_test.rb @@ -1,4 +1,5 @@ require File.expand_path('../helper', __FILE__) +require 'stringio' module Rack::Handler class Mock @@ -25,11 +26,11 @@ class ServerTest < Test::Unit::TestCase set :bind, 'foo.local' set :port, 9001 } - $stdout = File.open('/dev/null', 'wb') + $stderr = StringIO.new end def teardown - $stdout = STDOUT + $stderr = STDERR end it "locates the appropriate Rack handler and calls ::run" do