Constants defined in initializer not found when running gems:install in test


#1

Dear all,

I am setting some constants in an initializer, which are used in
validations in my models.
When I run

RAILS_ENV=test rake gems:install

I get missing constant errors for these, but not when I run

RAILS_ENV=development rake gems:install

It only happens for the gems:install task in test.
Everything else (e.g. rake test) works as expected.
What could be the problem?

Thanks for your help

Tobi


#2

The problem you ran into was the same one as this thread:

http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/56c560bd46347d12

and both are caused by load_application_classes trying to load all
your models at startup. That routine does nothing when
config.cache_classes is false (the default in development mode, but
not in test).

As a quick workaround, try setting config.cache_classes to false in
environments/test.rb to get the gems installed.

–Matt J.