We have two web apps that share the same database and models. To keep it DRY we created an engine that contains all those models. This engine is included in the respective apps via the Gemfile. We do have tests with RSpec and FactoryGirl inside the engine.
Now we are trying to write integration tests and we would like to use the factories from the engine without copying or symlinking. Is there a way to achieve this programmatically?
Ok so this works: https://github.com/thoughtbot/factory_girl_rails/pull/42
As it says on that pull request, include that code snippet in your core engine.
In the core engine you also need to modify your ".gemspec" file to add in the "spec/factories" files:
s.files = Dir["{app,config,db,lib}/**/*", "spec/factories/**/*", "LICENSE", "Rakefile", "README.md"]
Then those factories will be available in the application that includes your engine.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With