From 135fabd315c2624c1b25ced5ad15f7b9daba10cf Mon Sep 17 00:00:00 2001 From: Thomas Grindinger Date: Sun, 24 Apr 2016 17:22:46 -0500 Subject: improve fragile webrick test --- test/spec_webrick.rb | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/test/spec_webrick.rb b/test/spec_webrick.rb index 8e0360d2..9ae6103d 100644 --- a/test/spec_webrick.rb +++ b/test/spec_webrick.rb @@ -17,6 +17,19 @@ describe Rack::Handler::WEBrick do Rack::Lint.new(TestRequest.new) @thread = Thread.new { @server.start } trap(:INT) { @server.shutdown } + @status_thread = Thread.new do + seconds = 10 + wait_time = 0.1 + until is_running? || seconds <= 0 + seconds -= wait_time + sleep wait_time + end + raise "Server never reached status 'Running'" unless is_running? + end + end + + def is_running? + @server.status == :Running end it "respond" do @@ -188,6 +201,7 @@ describe Rack::Handler::WEBrick do end after do + @status_thread.join @server.shutdown @thread.join end -- cgit v1.2.3-24-ge0c7