🔖
Rspec Rails の filter_rails_from_backtrace! とはなにか
# Filter lines from Rails gems in backtraces.
Rspec がエラーを検出したときに表示する backtrace から rails 関係の gem に入っているファイルたちを削減します。書いてるやんけ。
# Adds exclusion filters for gems included with Rails
def filter_rails_from_backtrace!
filter_gems_from_backtrace "actionmailer", "actionpack", "actionview"
filter_gems_from_backtrace "activemodel", "activerecord",
"activesupport", "activejob"
end
内部的には filter_gems_from_backtrace
をコールしているだけのようです。
filter_gems_from_backtrace
についてはドキュメントにあります。
rails generate rspec:install
すると spec/rails_helper.rb
に config.filter_rails_from_backtrace!
が書かれています。デフォルトで rails のバックトレースは表示しないようになってますね。
ちなみに filter_gems_from_backtrace を無効にしてすべての backtrace を表示したいときは --backtrace
オプションをつけて rspec を実行します。
Discussion