KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Situation # Models class User < ActiveRecord::Base has_many :items end class Items < ActiveRecord::Base belongs_to :user validates_presence_of :user_id end # Factories Factory.define(:user) do |u| u.name "foo" end Factory.define(:user_with_items, :parent => :user) do |u| u.items {|items| [items.association(:item), items.association(:item)]} end Factory.define(:item) do |i| i.color "red" end Factory.define(:item_with_user, :parent => :user) do |i| i.association(:user) end Problem If you run @user = Factory(:user_with_items) then @user.items contains the two items. The issue is that the items aren't associated with the user in the database. If you reload the association @user.items(true) then you get back an empty array. I know you can build them manually or create helper methods on your own to build the object graph, but I'd like to avoid that. Question So, my question is how can you build up a has_many relationship in factory_girl while respecting the build strategy?
Tags (comma-separated)
Save Edits
Cancel