【发布时间】:2013-02-09 14:20:35
【问题描述】:
型号:
class Attachment < ActiveRecord::Base
belongs_to :narrative
attr_accessible :description, :user_id, :narrative_id
has_attached_file :file
validates_presence_of :user_id
validates_presence_of :narrative_id
validates_attachment :file, :presence => true,
:size => {:less_than => 20.megabytes}
end
不成功的测试:
describe Attachment do
it { should validate_presence_of :file }
it { should validate_size_of :file } # validate_size_of does not exist
end
我想避免将 20 MB 的文件转储到 repo 中只是为了测试这一点。有没有一种类似于我上面尝试过的方法可以真正起作用?
【问题讨论】:
-
为文件添加一个模拟,它的函数大小应该可以解决问题
-
我猜你正在使用
shoulda-matchers,由于显而易见的原因,它还没有内置 validate_size_of 匹配器。第二件事是恐怕你需要像你提到的那样粗略地编写测试。
标签: ruby-on-rails ruby rspec paperclip