class Fabricate

Public Class Methods

attributes_for(name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 14
def self.attributes_for(name, overrides = {}, &block)
  fail_if_initializing(name)
  schematic(name).to_attributes(overrides, &block)
end
attributes_for_times(count, name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 10
def self.attributes_for_times(count, name, overrides = {}, &block)
  Array.new(count).map { Fabricate.attributes_for(name, overrides, &block) }
end
build(name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 24
def self.build(name, overrides = {}, &block)
  fail_if_initializing(name)
  schematic(name).build(overrides, &block).tap do |object|
    Fabrication::Config.notifiers.each do |notifier|
      notifier.call(name, object)
    end
  end
end
build_times(count, name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 6
def self.build_times(count, name, overrides = {}, &block)
  Array.new(count).map { Fabricate.build(name, overrides, &block) }
end
create(name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 33
def self.create(name, overrides = {}, &block)
  fail_if_initializing(name)
  schematic(name).fabricate(overrides, &block).tap do |object|
    Fabrication::Config.notifiers.each do |notifier|
      notifier.call(name, object)
    end
  end
end
fail_if_initializing(name) click to toggle source
# File lib/fabricate.rb, line 51
def self.fail_if_initializing(name)
  raise Fabrication::MisplacedFabricateError, name if Fabrication.manager.initializing?
end
schematic(name) click to toggle source
# File lib/fabricate.rb, line 46
def self.schematic(name)
  Fabrication.manager.load_definitions if Fabrication.manager.empty?
  Fabrication.manager[name] || raise(Fabrication::UnknownFabricatorError, name)
end
sequence(name = Fabrication::Sequencer::DEFAULT, start = nil, &block) click to toggle source
# File lib/fabricate.rb, line 42
def self.sequence(name = Fabrication::Sequencer::DEFAULT, start = nil, &block)
  Fabrication::Sequencer.sequence(name, start, &block)
end
times(count, name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 2
def self.times(count, name, overrides = {}, &block)
  Array.new(count).map { Fabricate(name, overrides, &block) }
end
to_params(name, overrides = {}, &block) click to toggle source
# File lib/fabricate.rb, line 19
def self.to_params(name, overrides = {}, &block)
  fail_if_initializing(name)
  schematic(name).to_params(overrides, &block)
end