未验证 提交 b1548629 编写于 作者: E Eugene Kenny 提交者: GitHub

Merge pull request #40198 from jonathanhefner/anchor-backtrace-gem-filter-regexp

Anchor BacktraceCleaner gem filter regexp
...@@ -91,7 +91,7 @@ def add_gem_filter ...@@ -91,7 +91,7 @@ def add_gem_filter
gems_paths = (Gem.path | [Gem.default_dir]).map { |p| Regexp.escape(p) } gems_paths = (Gem.path | [Gem.default_dir]).map { |p| Regexp.escape(p) }
return if gems_paths.empty? return if gems_paths.empty?
gems_regexp = %r{(#{gems_paths.join('|')})/(bundler/)?gems/([^/]+)-([\w.]+)/(.*)} gems_regexp = %r{\A(#{gems_paths.join('|')})/(bundler/)?gems/([^/]+)-([\w.]+)/(.*)}
gems_result = '\3 (\4) \5' gems_result = '\3 (\4) \5'
add_filter { |line| line.sub(gems_regexp, gems_result) } add_filter { |line| line.sub(gems_regexp, gems_result) }
end end
......
...@@ -124,4 +124,10 @@ def setup ...@@ -124,4 +124,10 @@ def setup
result = @bc.clean(backtrace) result = @bc.clean(backtrace)
assert_equal %w[other/file.rb], result assert_equal %w[other/file.rb], result
end end
test "should preserve lines that have a subpath matching a gem path" do
backtrace = [Gem.default_dir, *Gem.path].map { |path| "/parent#{path}/gems/nosuchgem-1.2.3/lib/foo.rb" }
assert_equal backtrace, @bc.clean(backtrace)
end
end end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册