module FactoryGuy

Constants

ImplementationError
VERSION

Public Class Methods

next(attr, attr_string = nil) click to toggle source
# File lib/factory_guy.rb, line 7
def next(attr, attr_string = nil)
  count = count_for(attr)
  count += 1
  update_counter_hash!(attr, count)
  block = sequencer[attr]
  block ? block.call(count, attr_string) : raise("Sequence for :#{attr} is undefined.")
end
sequence(attr, &block) click to toggle source
# File lib/factory_guy.rb, line 15
def sequence(attr, &block)
  sequencer[attr] = block
end

Private Class Methods

count_for(attr) click to toggle source
# File lib/factory_guy.rb, line 21
def count_for(attr)
  counter_hash[attr] || 0
end
counter_hash() click to toggle source
# File lib/factory_guy.rb, line 29
def counter_hash
  @counter_hash ||= {}
end
sequencer() click to toggle source
# File lib/factory_guy.rb, line 33
def sequencer
  @sequencer ||= {}
end
update_counter_hash!(attr, count) click to toggle source
# File lib/factory_guy.rb, line 25
def update_counter_hash!(attr, count)
  counter_hash[attr] = count
end