factory_girl

https://github.com/thoughtbot/factory_girl

Ruby

A library for setting up Ruby objects as test data.

FactoryGirl::DefinitionProxy#method_missing

Calls add_attribute using the missing method name as the name of the
attribute, so that:

  factory :user do
    name 'Billy Idol'
  end

and:

  factory :user do
    add_attribute :name, 'Billy Idol'
  end

are equivalent.

If no argument or block is given, factory_girl will look for a sequence
or association with the same name. This means that:

  factory :user do
    email { create(:email) }
    association :account
  end

and:

  factory :user do
    email
    account
  end

are equivalent.

Source | Google | Stack overflow

Edit

git clone [email protected]:thoughtbot/factory_girl.git

cd factory_girl

open lib/factory_girl/definition_proxy.rb

Contribute

# Make a new branch

git checkout -b -your-name--update-docs-FactoryGirl--DefinitionProxy-method_missing-for-pr


# Commit to git

git add lib/factory_girl/definition_proxy.rbgit commit -m "better docs for FactoryGirl::DefinitionProxy#method_missing"


# Open pull request

gem install hub # on a mac you can `brew install hub`

hub fork

git push <your name> -your-name--update-docs-FactoryGirl--DefinitionProxy-method_missing-for-pr

hub pull-request


# Celebrate!