Using Rspec, factory_girl and permalink?

18 views
Skip to first unread message

Linus Pettersson

unread,
Dec 29, 2011, 5:28:24 AM12/29/11
to rubyonra...@googlegroups.com
Hi!

I'm using Rspec and factory_girl. In my products model I have a method that creates permalinks simply by overriding to_param, like this:

def create_permalink
  self.permalink = "#{self.name} #{self.brand.name}".parameterize
end

My product factory looks like this:

Factory.define :product do |p|
  p.sequence(:name) { |n| 'Product Name #{n}'}
  p.gender 'Man'
  p.sequence(:price) { |n| 123.00 + n }
  p.product_url 'http://www.example.com/prod-url'
  p.association :reseller
  p.association :subcategory
end


Then when I try to use the factory in Rspec, like this:

Factory.create(:product)

I get the following error:

Failure/Error: Factory.create(:product)
NoMethodError: undefined method `name' for nil:NilClass


Why is that?

Regards
Linus

Dave Aronson

unread,
Jan 1, 2012, 11:44:37 AM1/1/12
to rubyonra...@googlegroups.com
On Thu, Dec 29, 2011 at 05:28, Linus Pettersson
<linus.pe...@gmail.com> wrote:

> def create_permalink
>   self.permalink = "#{self.name} #{self.brand.name}".parameterize
> end

...


> Failure/Error: Factory.create(:product)
> NoMethodError: undefined method `name' for nil:NilClass
>
> Why is that?

My guess would be that you're not setting self.brand. I don't see
anything in the Factory setting it.

-Dave

--
Dave Aronson, President, Dave Aronson Software Engineering and Training
Ruby on Rails Freelancing (Northern Virginia, Washington DC, or Remote)
DaveAronson.com, Codosaur.us, Dare2XL.com, & RecruitingRants.com (NEW!)
Specialization is for insects. (Heinlein) - Have Pun, Will Babble! (me)

Linus Pettersson

unread,
Jan 2, 2012, 5:04:17 AM1/2/12
to rubyonra...@googlegroups.com
Of course... Thank you! Sometimes when you've looked for too long on the code you get blind :)

Regards
Linus
Reply all
Reply to author
Forward
0 new messages