aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/controller/logging_test.rb
diff options
context:
space:
mode:
authorColin Curtin <colin@procore.com>2008-11-26 10:18:03 -0800
committerColin Curtin <colin@procore.com>2008-11-26 10:18:03 -0800
commit4812e350b9e96641a29c8db6ea153426dad1c9a2 (patch)
tree1aa5ab05d8ff420c833677505f9b884ec61e4627 /actionpack/test/controller/logging_test.rb
parent78af01f80b3622237462d150aca4aba18204c093 (diff)
parentd18bfa2a4165297dbf5e6b1fff1731fefa9dd135 (diff)
downloadrails-4812e350b9e96641a29c8db6ea153426dad1c9a2.tar.gz
rails-4812e350b9e96641a29c8db6ea153426dad1c9a2.tar.bz2
rails-4812e350b9e96641a29c8db6ea153426dad1c9a2.zip
Merge branch 'master' of git@github.com:lifo/docrails
Diffstat (limited to 'actionpack/test/controller/logging_test.rb')
-rw-r--r--actionpack/test/controller/logging_test.rb46
1 files changed, 46 insertions, 0 deletions
diff --git a/actionpack/test/controller/logging_test.rb b/actionpack/test/controller/logging_test.rb
new file mode 100644
index 0000000000..3c936854dd
--- /dev/null
+++ b/actionpack/test/controller/logging_test.rb
@@ -0,0 +1,46 @@
+require 'abstract_unit'
+
+class LoggingController < ActionController::Base
+ def show
+ render :nothing => true
+ end
+end
+
+class LoggingTest < ActionController::TestCase
+ tests LoggingController
+
+ class MockLogger
+ attr_reader :logged
+
+ def method_missing(method, *args)
+ @logged ||= []
+ @logged << args.first
+ end
+ end
+
+ setup :set_logger
+
+ def test_logging_without_parameters
+ get :show
+ assert_equal 2, logs.size
+ assert_nil logs.detect {|l| l =~ /Parameters/ }
+ end
+
+ def test_logging_with_parameters
+ get :show, :id => 10
+ assert_equal 3, logs.size
+
+ params = logs.detect {|l| l =~ /Parameters/ }
+ assert_equal 'Parameters: {"id"=>"10"}', params
+ end
+
+ private
+
+ def set_logger
+ @controller.logger = MockLogger.new
+ end
+
+ def logs
+ @logs ||= @controller.logger.logged.compact.map {|l| l.strip}
+ end
+end