Sha256: 07b6926d2d6cf107f1cfa8f81a08dc465b95b5a679e6f0ac8a61598e952406cd

Contents?: true

Size: 1.03 KB

Versions: 1

Compression:

Stored size: 1.03 KB

Contents

class UserBuilder < Bob::Builder
  meta_build :user do |user|
    user.name = Faker::Name.first_name
    user.email = Faker::Internet.email
    user.items << Item.create!
  end

  meta_build :customUser, User do |user, save, params|
    user.name = params[:name]
    user.email = params[:email]
    user.items << Item.create!

    user.save! if save
  end    

  meta_build :forEachUser, User do |user|
    user.name = Faker::Name.first_name
    user.email = Faker::Internet.email
    user.items << Item.create!
  end

  for_each :forEachUser do |user|
    user.avatar = Faker::Avatar.image
  end

  for_each :forEachUser, build: Comment, qty: 20 do |user, comment|
    comment.user = user
    comment.description = Faker::Lorem.paragraph
  end

  meta_build :randomUser, User do |user|
    user.name = Faker::Name.first_name
    user.email = Faker::Internet.email
  end

  for_each :randomUser, build: Item, qty: 5, rnd_qty: true, min: 1 do |user, item|
    item.user = user
    item.description = Faker::Lorem.sentence
    user.items << item
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bob-builder-0.1.2 test/dummy/lib/builders/user_builder.rb