module FactoryBot::Internal

Experimental RBS support (using type sampling data from the type_fusion project).

# sig/factory_bot/internal.rbs

module FactoryBot::Internal
  def configuration: () -> FactoryBot::Configuration
  def factory_by_name: (Symbol name) -> FactoryBot::Factory
  def strategy_by_name: (Symbol name) -> Class
end

def configuration

Experimental RBS support (using type sampling data from the type_fusion project).

def configuration: () -> FactoryBot::Configuration

This signature was generated using 16 samples from 2 applications.

def configuration
  @configuration ||= Configuration.new
end

def factory_by_name(name)

Experimental RBS support (using type sampling data from the type_fusion project).

def factory_by_name: (Symbol name) -> FactoryBot::Factory

This signature was generated using 5 samples from 2 applications.

def factory_by_name(name)
  factories.find(name)
end

def register_default_strategies

def register_default_strategies
  register_strategy(:build, FactoryBot::Strategy::Build)
  register_strategy(:create, FactoryBot::Strategy::Create)
  register_strategy(:attributes_for, FactoryBot::Strategy::AttributesFor)
  register_strategy(:build_stubbed, FactoryBot::Strategy::Stub)
  register_strategy(:null, FactoryBot::Strategy::Null)
end

def register_factory(factory)

def register_factory(factory)
  factory.names.each do |name|
    factories.register(name, factory)
  end
  factory
end

def register_inline_sequence(sequence)

def register_inline_sequence(sequence)
  inline_sequences.push(sequence)
end

def register_sequence(sequence)

def register_sequence(sequence)
  sequence.names.each do |name|
    sequences.register(name, sequence)
  end
  sequence
end

def register_strategy(strategy_name, strategy_class)

def register_strategy(strategy_name, strategy_class)
  strategies.register(strategy_name, strategy_class)
  StrategySyntaxMethodRegistrar.new(strategy_name).define_strategy_methods
end

def register_trait(trait)

def register_trait(trait)
  trait.names.each do |name|
    traits.register(name, trait)
  end
  trait
end

def reset_configuration

def reset_configuration
  @configuration = nil
end

def rewind_inline_sequences

def rewind_inline_sequences
  inline_sequences.each(&:rewind)
end

def rewind_sequences

def rewind_sequences
  sequences.each(&:rewind)
  rewind_inline_sequences
end

def sequence_by_name(name)

def sequence_by_name(name)
  sequences.find(name)
end

def strategy_by_name(name)

Experimental RBS support (using type sampling data from the type_fusion project).

def strategy_by_name: (Symbol name) -> Class

This signature was generated using 2 samples from 1 application.

def strategy_by_name(name)
  strategies.find(name)
end

def trait_by_name(name)

def trait_by_name(name)
  traits.find(name)
end