On Mar 27, 2009, at 4:38 PM, jakepaul wrote:


I can't figure out what is causing this problem. I'm using the latest rspec
and rspec-rails gems on rails 2.3.2.

When I run autospec, the tests in the model spec that I am editing will all
fail. The error messages are like this:

ActiveRecord::RecordInvalid in 'Job new record should create a new record
given valid attributes'
Validation failed:

(Nothing after Validation Failed:, just blank). It doesn't matter what
attributes I pass to create the new model, and it doesn't matter if I do it using a regular create! method or using Machinist, the same error happens.

Now, if I make a change, autospec will run the specs from that one model spec again, and they will all pass. Then it runs all of my specs again and that's when the specific spec I'm editing fails (only when it runs all the specs). When I run rake spec:models or rake spec:controllers, everything passes as it should. So I figured it might have something to do with the controller specs, and if I remove those, autospec passes again. Then if I put the controller specs back, autospec still passes. It only starts failing
if I again edit the model specs.

This is happening in multiple models, not just one. It's making it
impossible to work with, so I'd really appreciate any thoughts you might
have. Thank you!


Your problem is one of load order.

I'd suggest running the debugger at the start of your failing spec:

it "should ..." do
  require 'rubygems'; require 'ruby-debug'; debugger

  ...
end

Run the specs in the failing case, and debug from there.

Scott
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to