我有两个实例,它们之间唯一的区别是我希望使用这样的值(完成),但它不起作用:
let(:section){Section.new(:date => '2015-05-01', :task_id => 1, :trade_id => 1, :schedule_id => 1)}
let(:complete_section){Section.new(section.attributes, complete: true)}当我这样做时,属性会从section.attributes中设置,但是complete: true会被忽略。
还有另一种方法可以从基获取属性:节,这样我就不需要每次都编写所有属性了?
发布于 2015-05-09 02:17:47
有吗?
let(:complete_section){Section.new(section.attributes.merge(complete: true))}做你想做的事?
发布于 2015-05-09 07:49:53
解决此问题的一个常见解决方案是FactoryGirl,您可以定义一个模板,只需覆盖必要的值:
let(:section) { FactoryGirl.build(:section) }
let(:complete_section) { FactoryGirl.build(:section, complete: true}https://stackoverflow.com/questions/30135226
复制相似问题