Class: Rails::BacktraceCleaner

Inherits:
ActiveSupport::BacktraceCleaner
  • Object
show all
Defined in:
lib/rails/backtrace_cleaner.rb

Constant Summary collapse

APP_DIRS_PATTERN =
/^\/?(app|config|lib|test|\(\w*\))/
RENDER_TEMPLATE_PATTERN =
/:in `_render_template_\w*'/
EMPTY_STRING =
"".freeze
SLASH =
"/".freeze
DOT_SLASH =
"./".freeze

Instance Method Summary collapse

Constructor Details

#initializeBacktraceCleaner

Returns a new instance of BacktraceCleaner.



13
14
15
16
17
18
19
20
21
22
# File 'lib/rails/backtrace_cleaner.rb', line 13

def initialize
  super
  @root = "#{Rails.root}/".freeze
  add_filter { |line| line.sub(@root, EMPTY_STRING) }
  add_filter { |line| line.sub(RENDER_TEMPLATE_PATTERN, EMPTY_STRING) }
  add_filter { |line| line.sub(DOT_SLASH, SLASH) } # for tests

  add_gem_filters
  add_silencer { |line| !APP_DIRS_PATTERN.match?(line) }
end