Ruby on rails 3 在rspec集成测试中使用嵌套模型构建模型
我知道我可以在rspec中做类似的事情:Ruby on rails 3 在rspec集成测试中使用嵌套模型构建模型,ruby-on-rails-3,rspec,integration-testing,nested-attributes,Ruby On Rails 3,Rspec,Integration Testing,Nested Attributes,我知道我可以在rspec中做类似的事情: let(:project) { Project.new } 但在我的应用程序中,项目接受任务的\u嵌套的\u属性\u,当我生成项目表单时,我会使用以下方法构建一个任务: @project = Project.new @project.tasks.build 我需要像这样的东西: let(:project) { Project.new.tasks.build } 但这似乎不起作用 在我的rspec测试中,我如何才能做到这一点?我不确定我是否理解你的意
let(:project) { Project.new }
但在我的应用程序中,项目接受任务的\u嵌套的\u属性\u,当我生成项目表单时,我会使用以下方法构建一个任务:
@project = Project.new
@project.tasks.build
我需要像这样的东西:
let(:project) { Project.new.tasks.build }
但这似乎不起作用
在我的rspec测试中,我如何才能做到这一点?我不确定我是否理解你的意思。无论如何,如果项目和任务是模型,项目有很多任务,任务属于项目,那么: 工厂.rb 规范中: alex,我使用let:project{FactoryGirl.build:project_with_task}设置了一个工厂,其中一个项目有一个任务,但我不确定这是否是在构建一个项目+任务,每个字段中都有值,而不是空表单字段。如果没有简单的方法,我会坚持使用它,因为它应该和我想要的测试一样。
factory :project do
name "Foo"
end
factory :task do
name "Bar"
project
end
let(:task) { FactoryGirl.build(:task) }
before { FactoryGirl.build(:project) }