bef5a01b31
Instead of calling before_create, after_build, after_create, or after_stub, you can now call: before(:create) {|instance| instance.name = "overridden!" } after(:create) {|instance| instance.name = "overridden!" } after(:build) {|instance| instance.name = "overridden!" } after(:stub) {|instance| instance.name = "overridden!" } Additionally, you can declare callbacks longhand: callback(:after_stub) {|instance| instance.name = "overridden!" } This allows for custom callbacks to be defined: callback(:custom_callback) {|instance| instance.name = "overridden!" } Which can then be used from a custom strategy: class CustomStrategy def association(runner); end def result(evaluation) evaluation.object.tap do |instance| evaluation.notify(:custom_callback, instance) end end end FactoryGirl.register_strategy(:custom, CustomStrategy) This would allow for calling: FactoryGirl.custom(:user) Which would return the user instance but execute the :custom_callback callback on the user instance first. |
||
---|---|---|
features | ||
gemfiles | ||
lib | ||
spec | ||
.autotest | ||
.gitignore | ||
.rspec | ||
.simplecov | ||
.travis.yml | ||
.yardopts | ||
Appraisals | ||
CONTRIBUTION_GUIDELINES.md | ||
GETTING_STARTED.md | ||
Gemfile | ||
Gemfile.lock | ||
LICENSE | ||
NEWS | ||
README.md | ||
Rakefile | ||
cucumber.yml | ||
factory_girl.gemspec |
README.md
factory_girl
factory_girl 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.
If you want to use factory_girl with Rails, see factory_girl_rails.
Documentation
You should find the documentation for your version of factory_girl on Rubygems.
See GETTING_STARTED for information on defining and using factories.
Install
gem install factory_girl
or add the following line to Gemfile:
gem 'factory_girl'
and run bundle install
from your shell.
Supported Ruby versions
The Factory Girl 3.x series supports Ruby 1.9.x.
For older versions of Ruby, please use the Factory Girl 2.x series.
More Information
Contributing
Please see the contribution guidelines.
Credits
factory_girl was written by Joe Ferris with contributions from several authors, including:
- Alex Sharp
- Eugene Bolshakov
- Jon Yurek
- Josh Nichols
- Josh Owens
- Nate Sutton
- Josh Clayton
- Thomas Walpole
The syntax layers are derived from software written by the following authors:
- Pete Yandell
- Rick Bradley
- Yossef Mendelssohn
factory_girl is maintained and funded by thoughtbot, inc
The names and logos for thoughtbot are trademarks of thoughtbot, inc.
License
factory_girl is Copyright © 2008-2011 Joe Ferris and thoughtbot. It is free software, and may be redistributed under the terms specified in the LICENSE file.