about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-12-14 00:09:40 -0800
committerEric Wong <normalperson@yhbt.net>2009-12-14 00:09:40 -0800
commitef02631a26bd29f8930585f207839bf35f2bf1e8 (patch)
tree591e295ccedb51032a10b8a75f31028aa685bb5f
parent4c8c891b76c2a44a0ae76eea8f07934b984caab0 (diff)
downloadunicorn-ef02631a26bd29f8930585f207839bf35f2bf1e8.tar.gz
rack.git upstream has it, so it will likely be in Rack 1.1
-rw-r--r--lib/unicorn.rb4
-rw-r--r--test/unit/test_server.rb10
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/unicorn.rb b/lib/unicorn.rb
index 71d5994..cf58165 100644
--- a/lib/unicorn.rb
+++ b/lib/unicorn.rb
@@ -249,6 +249,10 @@ module Unicorn
     def stdout_path=(path); redirect_io($stdout, path); end
     def stderr_path=(path); redirect_io($stderr, path); end
 
+    def logger=(obj)
+      HttpRequest::DEFAULTS["rack.logger"] = super
+    end
+
     # sets the path for the PID file of the master process
     def pid=(path)
       if path
diff --git a/test/unit/test_server.rb b/test/unit/test_server.rb
index 55147b7..00705d0 100644
--- a/test/unit/test_server.rb
+++ b/test/unit/test_server.rb
@@ -228,6 +228,16 @@ class WebServerTest < Test::Unit::TestCase
     end
   end
 
+  def test_logger_set
+    assert_equal @server.logger, Unicorn::HttpRequest::DEFAULTS["rack.logger"]
+  end
+
+  def test_logger_changed
+    tmp = Logger.new($stdout)
+    @server.logger = tmp
+    assert_equal tmp, Unicorn::HttpRequest::DEFAULTS["rack.logger"]
+  end
+
   def test_bad_client_400
     sock = nil
     assert_nothing_raised do