Sha256: 2e54a28df2440946f2bc410d4e342e754880e51a342c2d9c1bacc3d1ff15b504

Contents?: true

Size: 806 Bytes

Versions: 6

Compression:

Stored size: 806 Bytes

Contents

module FactoryBot
  class << self
    # An Array of strings specifying locations that should be searched for
    # factory definitions. By default, factory_bot will attempt to require
    # "factories", "test/factories" and "spec/factories". Only the first
    # existing file will be loaded.
    attr_accessor :definition_file_paths
  end

  self.definition_file_paths = %w(factories test/factories spec/factories)

  def self.find_definitions
    absolute_definition_file_paths = definition_file_paths.map { |path| File.expand_path(path) }

    absolute_definition_file_paths.uniq.each do |path|
      load("#{path}.rb") if File.exist?("#{path}.rb")

      if File.directory? path
        Dir[File.join(path, '**', '*.rb')].sort.each do |file|
          load file
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

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