Class: FactoryBotFactory::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/factory_bot_factory/base.rb

Class Method Summary collapse

Class Method Details

.build(*args) ⇒ Object

Raises:

  • (ArgumentError)


4
5
6
7
8
9
10
11
12
# File 'lib/factory_bot_factory/base.rb', line 4

def build(*args)
  factory_name, klass, data, options = build_args(*args)
  options ||= {}

  raise ArgumentError if factory_name.nil? || klass.nil? || !valid_data?(data)
  raise NestedToDeepError, 'Only support 5 nested levels' if options[:nested_level].to_i > 5

  factory(klass, data).new({ factory_name: factory_name }.merge(options)).generate(data)
end