RSpec テストで使用されているPaperTrail (Rails のオブジェクトの自動バージョン管理) に問題があります。通常、PaperTrail のバージョン管理なしでテストを実行したいのですが、PaperTrail を有効にしたいテストがいくつかあります。私は通常、Guard と Spork を使用してテストを実行します。特定のテストのようなものPaperTrail.enabled = true
やPaperTrail.enabled = false
その周辺で使用でき、すべて正常に動作します。
しかし、RSpec でテストを実行すると、PaperTrail を必要とするテストが失敗します。より具体的には、before
フィルター内のコードはバージョン オブジェクトを生成できますが、テスト内のコードは生成できないようです。かなりの量のコードスニペットを掘り下げ、いじり、試した後 (私はthisとthisを試しました)、最適な解決策はPaperTrail READMErequire "paper_trail/frameworks/rspec"
に記載されている行を使用することです。
残念なことに、これらのそれぞれは、私が始めたところから正しい状態を保っています — テストは Guard/Spork でパスしますが、通常の RSpec ではパスしません。私はローカルで Spork を使用していますが、継続的インテグレーション サーバーは RSpec を直接実行しているため、これは特に問題です。
誰にも洞察力がありますか?