我有一個CarrierWave :: Uploader,它可以生成上傳圖像的三個版本。如何使用Rspec測試carrierwave版本大小
# Process files as they are uploaded:
process :resize_to_fit => [400, 400]
# Create different versions of your uploaded files:
version :thumb do
process :resize_to_fit => [60, 60]
end
version :small do
process :resize_to_fit => [24, 24]
end
而在我的測試中,我嘗試驗證所生成的圖像
require 'spec_helper'
require 'carrierwave/test/matchers'
describe 'manufacturer logo uploader' do
include CarrierWave::Test::Matchers
before(:each) do
image_path = Rails.root.join('test/fixtures/images', 'avatar100.gif').to_s
@manufacturer = Factory.create(:manufacturer, :page_status => 1)
@manufacturer.logo_image = File.open(image_path)
@manufacturer.save!
end
context "manufacturer logo dimensions" do
it "should have three versions" do
@manufacturer.logo_image.should have_dimensions(400,400)
@manufacturer.logo_image.thumb.should have_dimensions(60,60)
@manufacturer.logo_image.small.should have_dimensions(24,24)
end
end
end
的尺寸,但這個測試要依賴於實際的圖像上resize_to_fit不一定會調整其大小到指定的尺寸。有關如何使用存根測試此任何想法?
你有沒有在這裏取得任何進展?我有類似的問題。 – BenU
@BenU不,我想我找不到更好的解決方案 – stream7