On Jan 25, 2012, at 12:43 AM, Guyren G Howe wrote: > > On Jan 24, 2012, at 11:27 PM, Julian Leviston wrote: > >> On 25/01/2012, at 5:24 PM, Guyren G Howe wrote: >> >>> My code that saves a record works fine in development or production, or >>> from the console. I can take the code in my test and run it in the console, >>> and it works fine. >>> >>> But when I run it under a model rspec, the ids are getting set to 0. I’ve >>> traced it through to where I do: >>> >>> <Model>.create <params> >>> >>> where I can see that the id is what I want to set it to in params. >>> >>> Same problem with rspec 2.6 and 2.8. >>> >>> Don’t make me switch to Test::Unit. Anyone? >> It'd be nice to have a bit of context for this issue. >> >> It's most likely an issue with your model's validation… > > Not sure what else to tell you. I’ve a complex bit of logic I want to > exercise that’s accepting a hierarchy of objects submitted to the application > as JSON. The controller pulls it apart into a hierarchical key-value hash. > I’ve a recursive operation that walks this structure, pulling out individual > objects and saving them. > > Everything works fine when I test it manually (e.g. in console). When I run > the same sequence of operations with the same values in console (i.e. I > tested it by copying the values and operations out of the spec into the > console), it all works fine. > > But it all fails horribly in rspec because the ids are getting overwritten > with 0s. I can get to the point in my code where I hand things over to > ActiveRecord, and the hash I’m giving to create is exactly what I’m after > including the id value. > > FWIW, the ids I’m trying to use are UUIDs. > > Since I’m entirely sure the hash I’m handing to create is correct, I’m left > with trying to grub around inside ActiveRecord, which I don’t look forward > to. So: in what way does RSpec modify the behavior of ActiveRecord that might > bear on this? > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users
http://ariejan.net/2008/08/12/ruby-on-rails-uuid-as-your-activerecord-primary-key Make sure the column is 16-byte binary _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users