Project

General

Profile

Backport #2593 » patch-test-webrick.diff

kimuraw (Wataru Kimura), 06/11/2010 03:01 AM

View differences:

test/webrick/utils.rb (working copy)
module_function
def start_server(klass, config={}, &block)
log_string = ""
logger = Object.new
class << logger; self; end.class_eval do
define_method(:<<) {|msg| log_string << msg }
end
log = proc { "webrick log start:\n" + log_string.gsub(/^/, " ").chomp + "\nwebrick log end" }
server = klass.new({
:BindAddress => "127.0.0.1", :Port => 0,
:Logger => WEBrick::Log.new(NullWriter),
:Logger => WEBrick::Log.new(logger),
:AccessLog => [[NullWriter, ""]]
}.update(config))
begin
thread = Thread.start{ server.start }
addr = server.listeners[0].addr
block.call([server, addr[3], addr[1]])
block.call([server, addr[3], addr[1], log])
ensure
server.stop
thread.join
test/webrick/test_filehandler.rb (working copy)
range = nil
bug2593 = '[ruby-dev:40030]'
TestWEBrick.start_httpserver(config) do |server, addr, port|
TestWEBrick.start_httpserver(config) do |server, addr, port, log|
http = Net::HTTP.new(addr, port)
req = Net::HTTP::Get.new("/")
http.request(req){|res|
(2-2/3)