aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
authorEileen M. Uchitelle <eileencodes@users.noreply.github.com>2018-08-07 08:00:07 -0400
committerGitHub <noreply@github.com>2018-08-07 08:00:07 -0400
commitb9807eb53880a386890aa1919cf812fb9876b805 (patch)
treee6ea705552a03692548b48955c11a681569a64f5 /railties
parent79573b3afffafc070ec1eecf8c47678bbdae60c7 (diff)
parente69dfa478b8a174362a7afc49dc7b3cbafe19337 (diff)
downloadrails-b9807eb53880a386890aa1919cf812fb9876b805.tar.gz
rails-b9807eb53880a386890aa1919cf812fb9876b805.tar.bz2
rails-b9807eb53880a386890aa1919cf812fb9876b805.zip
Merge pull request #33541 from lsylvester/clean-template-method-names
Fix filtering out ActionView::Template method names from backtrace.
Diffstat (limited to 'railties')
-rw-r--r--railties/lib/rails/backtrace_cleaner.rb2
-rw-r--r--railties/test/backtrace_cleaner_test.rb7
2 files changed, 8 insertions, 1 deletions
diff --git a/railties/lib/rails/backtrace_cleaner.rb b/railties/lib/rails/backtrace_cleaner.rb
index ae8db0f8ef..0e78959966 100644
--- a/railties/lib/rails/backtrace_cleaner.rb
+++ b/railties/lib/rails/backtrace_cleaner.rb
@@ -5,7 +5,7 @@ require "active_support/backtrace_cleaner"
module Rails
class BacktraceCleaner < ActiveSupport::BacktraceCleaner
APP_DIRS_PATTERN = /^\/?(app|config|lib|test|\(\w*\))/
- RENDER_TEMPLATE_PATTERN = /:in `_render_template_\w*'/
+ RENDER_TEMPLATE_PATTERN = /:in `.*_\w+_{2,3}\d+_\d+'/
EMPTY_STRING = "".freeze
SLASH = "/".freeze
DOT_SLASH = "./".freeze
diff --git a/railties/test/backtrace_cleaner_test.rb b/railties/test/backtrace_cleaner_test.rb
index 4546e8f559..8490f9eb10 100644
--- a/railties/test/backtrace_cleaner_test.rb
+++ b/railties/test/backtrace_cleaner_test.rb
@@ -32,4 +32,11 @@ class BacktraceCleanerTest < ActiveSupport::TestCase
assert_equal "(irb):1", result[0]
assert_equal 1, result.length
end
+
+ test "should omit ActionView template methods names" do
+ method_name = ActionView::Template.new(nil, "app/views/application/index.html.erb", nil, {}).send :method_name
+ backtrace = [ "app/views/application/index.html.erb:4:in `block in #{method_name}'"]
+ result = @cleaner.clean(backtrace, :all)
+ assert_equal "app/views/application/index.html.erb:4", result[0]
+ end
end