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

Reply via email to