On 13 May 2009, at 18:07, Matt Jones wrote:
> > Does the object pass validation? before_create callbacks won't run if > it doesn't. > > I'd recommend changing the middle line to @assignment.save.should > be_true or equivalent to check if the record is getting saved at all. > Also, be careful as if a before_create evaluates to false (as your one does) the create won't actually happen. Fred > --Matt Jones > > On May 12, 8:14 pm, Gabriel Saravia <[email protected]> > wrote: >> Has anyone ever had trouble doing this? Whenever I try to do so, it >> doesn't seem to work: >> >> in my model: >> [code] >> before_create :set_defaults >> >> def set_defaults >> self.submitted = false >> end >> [/code] >> >> in my rspec test: >> [code] >> it "Should set 'submitted' to false before a create" do >> @assignment = Assignment.new(:submitted => true) >> @assignment.save >> @assignment.submitted.should be_false >> end >> [/code] >> >> and the result: >> [code] >> Assignment Should set 'submitted' to false before a create' FAILED >> expected false, got true >> [/code] >> -- >> Posted viahttp://www.ruby-forum.com/. > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

