Tag: factory girl

工厂女孩创build绕过我的模型validation

我正在使用Factory Girl在我的模型/unit testing中为一个组创build两个实例。 我正在testing模型来检查.current调用根据下面的expiry属性只返回“当前”组… describe ".current" do let!(:current_group) { FactoryGirl.create(:group, :expiry => Time.now + 1.week) } let!(:expired_group) { FactoryGirl.create(:group, :expiry => Time.now – 3.days) } specify { Group.current.should == [current_group] } end 我的问题是我已经在模型中validation了新组的到期date是在今天的date之后。 这提高了下面的validation失败。 1) Group.current Failure/Error: let!(:expired_group) { FactoryGirl.create(:group, :expiry => Time.now – 3.days) } ActiveRecord::RecordInvalid: Validation failed: Expiry is before todays date 有没有办法强制创build团队,或者在创buildFactory […]

如何在Factory Girl中定义数组/散列?

我正在尝试编写一个testing,模拟Dropbox的REST服务中的一些返回值,这个服务使用嵌套哈希将数据返回给数组。 我无法弄清楚如何编写我的工厂,因为返回结果是一个有一个内部的数组。 这里会有什么? Factory.define :dropbox_hash do ?? end Dropbox的数据如下所示: ["/home", {"revision"=>48, "rev"=>"30054214dc", "thumb_exists"=>false, "bytes"=>0, "modified"=>"Thu, 29 Dec 2011 01:53:26 +0000", "path"=>"/Home", "is_dir"=>true, "icon"=>"folder_app", "root"=>"app_folder", "size"=>"0 bytes"}] 而且我想在我的RSpec中使用这样的工厂调用: Factory.create(:dropbox_hash)