aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/buffered_logger_test.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2007-10-04 19:52:10 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2007-10-04 19:52:10 +0000
commitd0755b981470901dc644550f1857f48e7bae6e8a (patch)
treeec016d1ff8b845e535c40b4fc4981550e2fda892 /activesupport/test/buffered_logger_test.rb
parent41bfedeac273d83585d3cdb2f181ae1978d31adb (diff)
downloadrails-d0755b981470901dc644550f1857f48e7bae6e8a.tar.gz
rails-d0755b981470901dc644550f1857f48e7bae6e8a.tar.bz2
rails-d0755b981470901dc644550f1857f48e7bae6e8a.zip
Disabling auto_flushing still flushes when the buffer hits a maximum size, as a failsafe against memory-gobbling.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7739 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport/test/buffered_logger_test.rb')
-rw-r--r--activesupport/test/buffered_logger_test.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/activesupport/test/buffered_logger_test.rb b/activesupport/test/buffered_logger_test.rb
index cabdb59045..dc6b59aee9 100644
--- a/activesupport/test/buffered_logger_test.rb
+++ b/activesupport/test/buffered_logger_test.rb
@@ -71,6 +71,19 @@ class BufferedLoggerTest < Test::Unit::TestCase
@logger.flush
assert !@output.string.empty?, @logger.buffer.size
end
+
+ define_method "test_disabling_auto_flush_with_#{disable.inspect}_should_flush_at_max_buffer_size_as_failsafe" do
+ @logger.auto_flushing = disable
+ assert_equal ActiveSupport::BufferedLogger::MAX_BUFFER_SIZE, @logger.auto_flushing
+
+ (ActiveSupport::BufferedLogger::MAX_BUFFER_SIZE - 1).times do
+ @logger.info 'wait for it..'
+ assert @output.string.empty?, @output.string
+ end
+
+ @logger.info 'there it is.'
+ assert !@output.string.empty?, @logger.buffer.size
+ end
end
def test_should_auto_flush_every_n_messages