On Thu, Jan 27, 2011 at 2:05 PM, Doug Bryant <doug+rspecu...@netinlet.com> wrote: > I'm currently running into the same issue and can find very little about it > on the interwebs - i.e. an individual test run with `script/spec` works fine > but the same test without any code changes fails when run as part of the > suite via `rake spec` > This issue seemed to start out of the blue. Some background and details... > Fixtures don't seem to be loading properly when run as part of the suite. > When my Driver model tries to save, it runs a validation testing that the > zip code entered is valid (i.e. exists in the ZipsTerritory rating table). > I have the :zips_territories fixture declared in the tests with enough data > in the fixture for the test to pass. The spec runs fine when executed with > `script/spec` but fails when run as part of the test suite `rake spec`. The > zips_territory fixture is declared properly and in before(:each) in the > tests, a driver is created with FactoryGirl via a call > like Factory.create(:driver). The callstack indicates the test is failing > while FactoryGirl is trying to create the model. Also, for a given > developer, the same set of tests fail due to this issue consistently, but > the tests which fail differ across different developers. > These tests had been running fine as a suite for almost two years. > In trying to debug this, I stumbled across some interesting behavior. If in > the before(:each) filter on the failing tests, I printed out a log message > which ultimately executed "ZipsTerritory.count". After I did this, the > tests would pass as part of a suite. Needing a quick fix and not having > time to debug the issue further, I just did the following in the > spec_helper.rb file... >> >> config.before(:each) do >> >> Rails.logger.warn "ZipsTerritory.count == #{ZipsTerritory.count}" >> >> end > > This worked fine for about a week before the issue popped back up again. > I can't think of anything which changed in the codebase which would have > triggered this problem. The app has been running rails 2.3.8 for several > months. We had been using rspec 1.3.0 and rspec-rails 1.3.2 for several > months. (sidenote: rspec 1.3.1 & rspec-rails 1.3.3 seem to have some sort > of other bug which fails to properly call a method on a child class and > somehow gets delegated to the parent class - not present in 1.3.0 & 1.3.2 > rspec/rspec-rails).
Example please? > I've tried several version of FactoryGirl and all of > those seem to trigger the issue too. > My spec_helper.rb is: https://gist.github.com/0d3ea01ffe4a15f4b2b3 > Does anything stand out? Has anybody else experienced this? Any ideas? > Thanks, Doug I made one comment on the gist, but I think it's unrelated. You say nothing changed that you _think_ would cause this, but something must have changes somewhere. What _did_ change? Any new gems or upgraded gems in the environment? > On Fri, Aug 14, 2009 at 6:04 AM, Rob Aldred <rob.ald...@setfiremedia.com> > wrote: >> >> Hi, I've been trying to work this out for a while, im convinced its some >> local db configuration specific to my machine. >> When running `rake spec` 14 of my test fail all of them in the user_spec >> generated by restful auth. >> The error for all the failing tests is: >> ActiveRecord::RecordNotFound >> Couldn't find User with ID=1 >> Iv put some debugger lines and at the start of some of the tests it would >> appear that the users fixture is not being loaded when running the full >> suite >> If I run the specific test with the spec >> binary `spec spec/modes/user_spec.rb` all the fixtures are loaded and pass as expected. >> Further more, the error is only apparent when using mysql for the test >> db... >> When I use sqlite for the test db the tests pass when running the whole >> suite and the specific test... >> Weird... I'd like to know if anyone else has experienced this and if >> anyone has any pointers >> as to why the fixtures are not loaded when using mysql as the test db. >> Many thanks >> Rob >> _______________________________________________ >> rspec-users mailing list >> rspec-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/rspec-users > > > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users