1
0
Fork 0
mirror of https://github.com/thoughtbot/factory_bot_rails.git synced 2022-11-09 11:49:18 -05:00
Factory Bot ♥ Rails
Find a file
Oliver Peate 12e09d4ccb
Merge pull request #272 from thoughtbot/op-drop-jruby
Drop jruby & add modern Rubies to Travis config
2018-06-01 17:53:00 +01:00
bin Add bin/setup, improve contributing guidelines 2014-05-27 00:41:28 -07:00
features Rename all girl -> bot 2017-10-20 18:21:52 -04:00
gemfiles Bump version to v4.10.0 2018-05-25 15:51:05 +01:00
lib Rename all girl -> bot 2017-10-20 18:21:52 -04:00
.gitignore Explicitly define gemfiles for Travis 2014-07-25 16:11:58 -04:00
.travis.yml Don't run Rails 4.1 appraisal with Ruby 2.4/2.5 on CI 2018-06-01 17:22:11 +01:00
Appraisals Appraise against Rails 5.0 2016-07-01 09:04:50 -04:00
CONTRIBUTING.md Rename all girl -> bot 2017-10-20 18:21:52 -04:00
factory_bot_rails.gemspec Bump version to v4.10.0 2018-05-25 15:51:05 +01:00
factory_girl_rails.gemspec Bump version to 4.8.2 2017-10-20 18:55:57 -04:00
Gemfile Rename all girl -> bot 2017-10-20 18:21:52 -04:00
Gemfile.lock Bump version to v4.10.0 2018-05-25 15:51:05 +01:00
LICENSE Extend copyright year through 2013 2013-01-04 11:14:31 -05:00
NEWS Bump version to v4.10.0 2018-05-25 15:51:05 +01:00
Rakefile Rename all girl -> bot 2017-10-20 18:21:52 -04:00
README.md Replace instructions with link to upgrade guide 2017-11-07 15:39:12 -05:00

factory_bot_rails Build Status Code Climate

factory_bot is a fixtures replacement with a straightforward definition syntax, support for multiple build strategies (saved instances, unsaved instances, attribute hashes, and stubbed objects), and support for multiple factories for the same class (user, admin_user, and so on), including factory inheritance.

Transitioning from factory_girl_rails?

Check out the guide.

Rails

factory_bot_rails provides Rails integration for factory_bot.

Currently, automatic factory definition loading is the only Rails-specific feature.

Supported Rails versions are listed in Appraisals. Supported Ruby versions are listed in .travis.yml.

Download

Github: http://github.com/thoughtbot/factory_bot_rails

Gem:

$ gem install factory_bot_rails

Configuration

Add factory_bot_rails to your Gemfile:

group :development, :test do
  gem 'factory_bot_rails'
end

Generators for factories will automatically substitute fixture (and maybe any other fixture_replacement you set). If you want to disable this feature, add the following to your application.rb file:

config.generators do |g|
  g.factory_bot false
end

Default factories directory is test/factories, or spec/factories if test_framework generator is set to :rspec; change this behavior with:

config.generators do |g|
  g.factory_bot dir: 'custom/dir/for/factories'
end

If you use factory_bot for fixture replacement, ensure that factory_bot_rails is available in the development group. If it's not, Rails will generate standard .yml files instead of factory files.

factory_bot takes an option suffix: 'some_suffix' to generate factories as modelname_some_suffix.rb.

If you use factory_bot for fixture replacement and already have a factories.rb file in the directory that contains your tests, factory_bot_rails will insert new factory definitions at the top of factories.rb.

You may need to configure your test suite to include factory_bot methods; see configuration.

Contributing

Please see CONTRIBUTING.md.

Credits

factory_bot was originally written by Joe Ferris.

thoughtbot

factory_bot is maintained and funded by thoughtbot, inc

The names and logos for thoughtbot are trademarks of thoughtbot, inc.

License

factory_bot_rails is Copyright © 2008-2016 Joe Ferris and thoughtbot. It is free software, and may be redistributed under the terms specified in the LICENSE file.