I have a problem where I can’t run tests on a rails app that was written
for rails 1.0.
Sequence of events was this:
Develop Application1 on Rails 1.0 / Ruby 1.8.2
Freeze rails into vendor folder on Application1
Develop Application2 on Rails 1.1 / Ruby 1.8.4
Return to Application1 and run tests, every test fails with the error
“undefined method `verify_active_connections!” or in detail …
- Error:
test_index(WatchlistsControllerTest):
NoMethodError: undefined methodverify_active_connections!' for ActiveRecord::Base:Class D:/svn_dbi/config/../vendor/rails/activerecord/lib/active_record/base.rb:996:in
method_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activerecord-1.14.2/lib/active_record/fixtures.rb:536:in
`teardown’
The result is the same regardless of whether I run rake or invoke a test
file directly.
The app itself runs fine in webbrick, it’s just the tests that are
broken.
What seems to happening is that despite the freeze, the latest version
(non-frozen) of ActiveRecord is being used
(activerecord-1.14.2/lib/active_record/fixtures.rb) to call other code
(ActiveRecord code ?) in the frozen vendor folder.
Presumably something in the test suite directly invokes a particular
version of ActiveRecord ?
Any pointers to how to get this fixed much appreciated.
Cheers, Andy