Posted at

paper_trail gemをアップデートしたらテストが通らなくなったときはこうしよう

More than 3 years have passed since last update.

古めのpaper_trailを使っている人がGemをアップデートしたときにありがちです。


問題

paper_trailを3.0.5以上にアップデートしたら、paper_trailを利用した履歴管理関連のテストが落ちるようにになった。


解決方法

テスト実行時に自動的にpaper_trailのバージョニングがオフになるようになったので、spec_helper.rbに以下の行を加え、

require 'paper_trail/frameworks/rspec'

履歴関連のテストをしている部分をwith_versioningブロックで囲むか、

describe '#hoge' do 

with_versioning do
describe 'versioning test'
end
end

テストにversioning: trueをつけると履歴管理が有効になります。

describe '#hoge', versioning: true do 

describe 'versioning test'
end