diff options
author | Josh Kalderimis <josh.kalderimis@gmail.com> | 2011-05-23 15:44:48 +0200 |
---|---|---|
committer | Josh Kalderimis <josh.kalderimis@gmail.com> | 2011-05-23 15:44:48 +0200 |
commit | 2514d65ca2b92f57b52e8027f6ab6fc8601df92f (patch) | |
tree | 8d891c8aeaec33d4b5491bd6231dbfa3e772c820 /activesupport/test/core_ext | |
parent | eff5d9aed468e8d6c4ffb103dad8e99b0a65465d (diff) | |
download | rails-2514d65ca2b92f57b52e8027f6ab6fc8601df92f.tar.gz rails-2514d65ca2b92f57b52e8027f6ab6fc8601df92f.tar.bz2 rails-2514d65ca2b92f57b52e8027f6ab6fc8601df92f.zip |
Removed the AS core_ext/kernel/debugger breakpoint method as this method is added by ruby-debug and should be left as is. Missing tests added.
Diffstat (limited to 'activesupport/test/core_ext')
-rw-r--r-- | activesupport/test/core_ext/kernel_test.rb | 46 |
1 files changed, 43 insertions, 3 deletions
diff --git a/activesupport/test/core_ext/kernel_test.rb b/activesupport/test/core_ext/kernel_test.rb index ede9b0a6aa..995bc0751a 100644 --- a/activesupport/test/core_ext/kernel_test.rb +++ b/activesupport/test/core_ext/kernel_test.rb @@ -52,10 +52,10 @@ class KernelTest < Test::Unit::TestCase class << o; @x = 1; end assert_equal 1, o.class_eval { @x } end - + def test_capture - assert_equal 'STDERR', capture(:stderr) {$stderr.print 'STDERR'} - assert_equal 'STDOUT', capture(:stdout) {print 'STDOUT'} + assert_equal 'STDERR', capture(:stderr) { $stderr.print 'STDERR' } + assert_equal 'STDOUT', capture(:stdout) { print 'STDOUT' } end end @@ -73,3 +73,43 @@ class KernelSuppressTest < Test::Unit::TestCase suppress(LoadError, ArgumentError) { raise ArgumentError } end end + +class MockStdErr + attr_reader :output + def puts(message) + @output ||= [] + @output << message + end + + def info(message) + puts(message) + end + + def write(message) + puts(message) + end +end + +class KernelDebuggerTest < Test::Unit::TestCase + def test_debugger_not_available_message_to_stderr + old_stderr = $stderr + $stderr = MockStdErr.new + debugger + assert_match(/Debugger requested/, $stderr.output.first) + ensure + $stderr = old_stderr + end + + def test_debugger_not_available_message_to_rails_logger + rails = Class.new do + def self.logger + @logger ||= MockStdErr.new + end + end + Object.const_set("Rails", rails) + debugger + assert_match(/Debugger requested/, rails.logger.output.first) + ensure + Object.send(:remove_const, "Rails") + end +end
\ No newline at end of file |