rspec carrierwaveはhave_dimensionsが常に失敗するはずです:親指はサイズ変更されていません
-
09-10-2019 - |
質問
CarrierWaveがセットアップされており、画像を正常に処理します。サブフォルダーなどで、よくサイズ変更された親指バージョンを取得します。私のフロントエンド(HTML)と私の両方から rails console
. 。私はミニマジックを使用します
しかし、私のRSPECでは、親指テストは常に失敗します。
describe 'processed images' do
before(:each) do
AttachmentUploader.enable_processing = true
AttachmentUploader.enable_processing = true
@uploader = AttachmentUploader.new(@post, :image)
@uploader.store!(File.open(@file))
end
after(:each) do
@uploader.remove!
AttachmentUploader.enable_processing = false
end
describe 'the thumb version' do
it "should scale down ane image to be exactly 50 by 50 pixels" do
@uploader.recreate_versions!
@uploader.thumb.should have_dimensions(50, 50)
end
end
@file
フィクスチャーにあるファイルです。見つかり、添付されています(他のテストが通過します)。そして、私が線にコメントするなら @uploader.remove!
, 、例えば、ファイルを残します .../public/uploads/post/image/thumb_fig.png
. 。ただし、そのファイルはそうです いいえ サイズ変更。同じシーケンストラフを呼び出すとき rails console
それはうまくサイズ変更されます。
スペックに何かが足りないのですか?特別なフラグを設定する必要がありますか?特定の方法を実行するように強制しますか?
解決
このパーティーに少し遅れましたが、自分で似たようなことに取り組んでいます。 @uploader.recreate_versionsだと思いますが、あなたのテストはうまく見えます。不要です。それ以外の場合は、あなたがあなたのアップローダークラスで処理するための呼び出しを持っていることを確認し、あなたがinclude CarrierWave::Test::Matchers
あなたのテストで
他のヒント
CarrierWaveの処理を有効にしていることを確認してください config/initializers/carrierwave.rb
.
読む必要があります:
config.enable_processing = true
所属していません StackOverflow