|
1 | 1 | require 'abstract_unit' |
2 | 2 | require 'rails/backtrace_cleaner' |
3 | 3 |
|
4 | | -class BacktraceCleanerVendorGemTest < ActiveSupport::TestCase |
| 4 | +class BacktraceCleanerTest < ActiveSupport::TestCase |
5 | 5 | def setup |
6 | 6 | @cleaner = Rails::BacktraceCleaner.new |
7 | 7 | end |
8 | 8 |
|
9 | 9 | test "should format installed gems correctly" do |
10 | | - @backtrace = [ "#{Gem.path[0]}/gems/nosuchgem-1.2.3/lib/foo.rb" ] |
11 | | - @result = @cleaner.clean(@backtrace, :all) |
12 | | - assert_equal "nosuchgem (1.2.3) lib/foo.rb", @result[0] |
| 10 | + backtrace = [ "#{Gem.path[0]}/gems/nosuchgem-1.2.3/lib/foo.rb" ] |
| 11 | + result = @cleaner.clean(backtrace, :all) |
| 12 | + assert_equal "nosuchgem (1.2.3) lib/foo.rb", result[0] |
13 | 13 | end |
14 | 14 |
|
15 | 15 | test "should format installed gems not in Gem.default_dir correctly" do |
16 | | - @target_dir = Gem.path.detect { |p| p != Gem.default_dir } |
| 16 | + target_dir = Gem.path.detect { |p| p != Gem.default_dir } |
17 | 17 | # skip this test if default_dir is the only directory on Gem.path |
18 | 18 | if @target_dir |
19 | | - @backtrace = [ "#{@target_dir}/gems/nosuchgem-1.2.3/lib/foo.rb" ] |
20 | | - @result = @cleaner.clean(@backtrace, :all) |
21 | | - assert_equal "nosuchgem (1.2.3) lib/foo.rb", @result[0] |
| 19 | + backtrace = [ "#{target_dir}/gems/nosuchgem-1.2.3/lib/foo.rb" ] |
| 20 | + result = @cleaner.clean(backtrace, :all) |
| 21 | + assert_equal "nosuchgem (1.2.3) lib/foo.rb", result[0] |
22 | 22 | end |
23 | 23 | end |
| 24 | + |
| 25 | + test "should consider traces from irb lines as User code" do |
| 26 | + backtrace = [ "from (irb):1", |
| 27 | + "from /Path/to/rails/railties/lib/rails/commands/console.rb:77:in `start'", |
| 28 | + "from bin/rails:4:in `<main>'" ] |
| 29 | + result = @cleaner.clean(backtrace, :all) |
| 30 | + assert_equal "from (irb):1", result[0] |
| 31 | + end |
24 | 32 | end |
0 commit comments