Class: ActiveRecord::FixtureSet::ClassCache

Inherits:
Object
  • Object
show all
Defined in:
activerecord/lib/active_record/fixtures.rb

Overview

:nodoc:

Instance Method Summary collapse

Constructor Details

#initialize(class_names, config) ⇒ ClassCache

Returns a new instance of ClassCache.



471
472
473
474
475
476
477
478
479
# File 'activerecord/lib/active_record/fixtures.rb', line 471

def initialize(class_names, config)
  @class_names = class_names.stringify_keys
  @config      = config

  # Remove string values that aren't constants or subclasses of AR
  @class_names.delete_if do |klass_name, klass|
    !insert_class(@class_names, klass_name, klass)
  end
end

Instance Method Details

#[](fs_name) ⇒ Object



481
482
483
484
485
486
# File 'activerecord/lib/active_record/fixtures.rb', line 481

def [](fs_name)
  @class_names.fetch(fs_name) do
    klass = default_fixture_model(fs_name, @config).safe_constantize
    insert_class(@class_names, fs_name, klass)
  end
end