Sha256: 053c079a851655aebc744bd26ce885dd4399e4167e81c1d43babe203713aa3fb

Contents?: true

Size: 1.28 KB

Versions: 6

Compression:

Stored size: 1.28 KB

Contents

module FactoryBot
  # @api private
  class Configuration
    attr_reader :factories, :sequences, :traits, :strategies, :callback_names

    attr_accessor :allow_class_lookup, :use_parent_strategy

    def initialize
      @factories      = Decorator::DisallowsDuplicatesRegistry.new(Registry.new('Factory'))
      @sequences      = Decorator::DisallowsDuplicatesRegistry.new(Registry.new('Sequence'))
      @traits         = Decorator::DisallowsDuplicatesRegistry.new(Registry.new('Trait'))
      @strategies     = Registry.new('Strategy')
      @callback_names = Set.new
      @definition     = Definition.new

      @allow_class_lookup = true

      to_create { |instance| instance.save! }
      initialize_with { new }
    end

    delegate :to_create, :skip_create, :constructor, :before, :after,
      :callback, :callbacks, to: :@definition

    def initialize_with(&block)
      @definition.define_constructor(&block)
    end

    def duplicate_attribute_assignment_from_initialize_with
      false
    end

    def duplicate_attribute_assignment_from_initialize_with=(value)
      ActiveSupport::Deprecation.warn 'Assignment of duplicate_attribute_assignment_from_initialize_with is unnecessary as this is now default behavior in FactoryBot 4.0; this line can be removed', caller
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
factory_bot-4.11.1 lib/factory_bot/configuration.rb
factory_bot-4.11.0 lib/factory_bot/configuration.rb
factory_bot-4.10.0 lib/factory_bot/configuration.rb
factory_bot-4.8.2 lib/factory_bot/configuration.rb
factory_bot-1.0.1.alpha lib/factory_bot/configuration.rb
factory_bot-1.0.0.alpha lib/factory_bot/configuration.rb