1

キャリアウェーブを設定しましたが、画像は正常に処理されます。サブフォルダーなどで、適切にサイズ変更されたサムバージョンを取得します。私のフロントエンド(HTML)と私の両方からrails console。MiniMagicを使用しています

しかし、私の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サイズが適切に変更されます。

スペックに何か欠けていますか?特別なフラグを設定する必要がありますか?特定のメソッドを強制的に実行しますか?

4

2 に答える 2

1

このパーティーに少し遅れましたが、私と同じようなことに取り組んでいます。@ uploader.recreate_Versionsを信じていますが、私が言えることから、あなたのテストはうまく見えます!不要です。それ以外の場合は、Uploaderクラスで処理するための呼び出しがあり include CarrierWave::Test::Matchers、テストに参加していることを確認してください。

于 2011-03-01T16:40:24.687 に答える
1

でCarrierwaveの処理が有効になっていることを確認してくださいconfig/initializers/carrierwave.rb

それは読むべきです:

config.enable_processing = true
于 2012-03-08T14:58:49.290 に答える