Paper Trail
概要
バージョン管理ツールのPaper TrailのテストコードをRspecでコーディングするにはざっくりと2つの手順だけで済みます。
だけです。
手順1 ( ヘルパーの設定 )
# spec/rails_helper.rb ... require 'paper_trail/frameworks/rspec'
手順2 ( spec の追加 )
describe 'RSpec test group' do it 'by default, PaperTrail will be turned off' do expect(PaperTrail).to_not be_enabled end with_versioning do it 'within a `with_versioning` block it will be turned on' do expect(PaperTrail).to be_enabled end end it 'can be turned on at the `it` or `describe` level', versioning: true do expect(PaperTrail).to be_enabled end end
基本的には上記の記述でテストコードが書けます。
また with_versioning
で括ることで簡単にバージョン管理が行えているかテストをかけます。
例えば、paper-trail
を用いてバージョンが1つしか存在しないことを確認するテストは以下のように記述できます。
with_versioning do it 'バージョンが1つのみ存在する' do expect(sample_model.versions.length).to eq 1 end end