Paperclip / Rspec测试:有没有更快的方法来测试paperclip validates_attachment_content_type?

时间:2011-11-16 04:50:02

标签: ruby-on-rails rspec paperclip shoulda paperclip-validation

我注意到的一件事是,在我做的大多数项目中,一个需要很长时间(30秒+)的规范是这个应该/回形针助手:

it { should validate_attachment_content_type(:bannerimage)
  .allowing('image/png', 'image/jpeg', 'image/gif', 'image/jpg')
  .rejecting('text/plain')
}

我非常希望保留内容类型验证,但我想知道是否有更快的方法来实现它。我已经用以下标记标记这些测试:慢速运行rspec而不使用:慢速规范,但是,我希望有人能够更快地测试图像内容类型。

1 个答案:

答案 0 :(得分:0)

看起来你正在针对回形针运行自己的测试。

一般来说,我让gem提供商(尤其是像这样的大型产品)证明他们的规格在推出发布版之前会成功运行。

我从我的测试中删除了实际的回形针,以使它们像这样更快,放在spec_helper.rb

# stub out paperclip? http://pivotallabs.com/stubbing-out-paperclip-imagemagick-in-tests/
# only like .1 seconds faster anyways though...
module Paperclip
  def self.run cmd, params = "", expected_outcodes = 0
    case cmd
    when "identify"
      return "100x100"
    when "convert"
      return
    else
      super
    end
  end
end

class Paperclip::Attachment
  def post_process
  end
end