…o advertise its factories for use in a recipient project When a (mountable) engine defines models and factories to test the models, sometimes it is convenient to use this factories from a project which depends on the engine. But current factory_girl_rail initialization processes do not allow to do so without hacks. (after_initializer resets all FactoryGirl.definition_file_paths to defaults with = [paths]) When this change introduces the engine can advertise some factories in an its own railtie, i.e.: module ModelCore class Engine < Rails::Engine initializer "model_core.factories", :after => "factory_girl.set_factory_paths" do FactoryGirl.definition_file_paths << File.expand_path('../../../spec/factories', __FILE__) if defined?(FactoryGirl) end end end
…e replacement mechanism.