Instiki 0.16.3: Rails 2.3.0
Instiki now runs on the Rails 2.3.0 Candidate Release. Among other improvements, this means that it now automagically selects between WEBrick and Mongrel. Just run ./instiki --daemon
This commit is contained in:
parent
43aadecc99
commit
4e14ccc74d
893 changed files with 71965 additions and 28511 deletions
|
@ -4,32 +4,25 @@ require 'action_view/helpers/benchmark_helper'
|
|||
class BenchmarkHelperTest < ActionView::TestCase
|
||||
tests ActionView::Helpers::BenchmarkHelper
|
||||
|
||||
class MockLogger
|
||||
attr_reader :logged
|
||||
|
||||
def initialize
|
||||
@logged = []
|
||||
end
|
||||
|
||||
def method_missing(method, *args)
|
||||
@logged << [method, args]
|
||||
end
|
||||
def teardown
|
||||
controller.logger.send(:clear_buffer)
|
||||
end
|
||||
|
||||
def controller
|
||||
@controller ||= Struct.new(:logger).new(MockLogger.new)
|
||||
logger = ActiveSupport::BufferedLogger.new(StringIO.new)
|
||||
logger.auto_flushing = false
|
||||
@controller ||= Struct.new(:logger).new(logger)
|
||||
end
|
||||
|
||||
def test_without_block
|
||||
assert_raise(LocalJumpError) { benchmark }
|
||||
assert controller.logger.logged.empty?
|
||||
assert buffer.empty?
|
||||
end
|
||||
|
||||
def test_defaults
|
||||
i_was_run = false
|
||||
benchmark { i_was_run = true }
|
||||
assert i_was_run
|
||||
assert 1, controller.logger.logged.size
|
||||
assert_last_logged
|
||||
end
|
||||
|
||||
|
@ -37,24 +30,57 @@ class BenchmarkHelperTest < ActionView::TestCase
|
|||
i_was_run = false
|
||||
benchmark('test_run') { i_was_run = true }
|
||||
assert i_was_run
|
||||
assert 1, controller.logger.logged.size
|
||||
assert_last_logged 'test_run'
|
||||
end
|
||||
|
||||
def test_with_message_and_level
|
||||
def test_with_message_and_deprecated_level
|
||||
i_was_run = false
|
||||
benchmark('debug_run', :debug) { i_was_run = true }
|
||||
|
||||
assert_deprecated do
|
||||
benchmark('debug_run', :debug) { i_was_run = true }
|
||||
end
|
||||
|
||||
assert i_was_run
|
||||
assert 1, controller.logger.logged.size
|
||||
assert_last_logged 'debug_run', :debug
|
||||
assert_last_logged 'debug_run'
|
||||
end
|
||||
|
||||
def test_within_level
|
||||
controller.logger.level = ActiveSupport::BufferedLogger::DEBUG
|
||||
benchmark('included_debug_run', :level => :debug) { }
|
||||
assert_last_logged 'included_debug_run'
|
||||
end
|
||||
|
||||
def test_outside_level
|
||||
controller.logger.level = ActiveSupport::BufferedLogger::ERROR
|
||||
benchmark('skipped_debug_run', :level => :debug) { }
|
||||
assert_no_match(/skipped_debug_run/, buffer.last)
|
||||
ensure
|
||||
controller.logger.level = ActiveSupport::BufferedLogger::DEBUG
|
||||
end
|
||||
|
||||
def test_without_silencing
|
||||
benchmark('debug_run', :silence => false) do
|
||||
controller.logger.info "not silenced!"
|
||||
end
|
||||
|
||||
assert_equal 2, buffer.size
|
||||
end
|
||||
|
||||
def test_with_silencing
|
||||
benchmark('debug_run', :silence => true) do
|
||||
controller.logger.info "silenced!"
|
||||
end
|
||||
|
||||
assert_equal 1, buffer.size
|
||||
end
|
||||
|
||||
|
||||
private
|
||||
def assert_last_logged(message = 'Benchmarking', level = :info)
|
||||
last = controller.logger.logged.last
|
||||
assert 2, last.size
|
||||
assert_equal level, last.first
|
||||
assert 1, last[1].size
|
||||
assert last[1][0] =~ /^#{message} \(.*\)$/
|
||||
def buffer
|
||||
controller.logger.send(:buffer)
|
||||
end
|
||||
|
||||
def assert_last_logged(message = 'Benchmarking')
|
||||
assert_match(/^#{message} \(.*\)$/, buffer.last)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue