Sha256: 2f33421cbb6dce604f6b91682244affce712052d921dce18f42ba6bd47875373

Contents?: true

Size: 806 Bytes

Versions: 9

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

9 entries across 9 versions & 1 rubygems

Version Path
factory_bot-5.2.0 lib/factory_bot/find_definitions.rb
factory_bot-5.1.2 lib/factory_bot/find_definitions.rb
factory_bot-5.1.1 lib/factory_bot/find_definitions.rb
factory_bot-5.1.0 lib/factory_bot/find_definitions.rb
factory_bot-5.0.2 lib/factory_bot/find_definitions.rb
factory_bot-5.0.1 lib/factory_bot/find_definitions.rb
factory_bot-5.0.0 lib/factory_bot/find_definitions.rb
factory_bot-5.0.0.rc2 lib/factory_bot/find_definitions.rb
factory_bot-5.0.0.rc1 lib/factory_bot/find_definitions.rb