Flowdock
method

setup_fixture_accessors

Importance_0
Ruby on Rails latest stable (v6.1.7.7) - 0 notes - Class: Test::Unit::TestCase
  • 1.0.0
  • 1.1.6
  • 1.2.6
  • 2.0.3
  • 2.1.0 (0)
  • 2.2.1 (0)
  • 2.3.8
  • 3.0.0
  • 3.0.9
  • 3.1.0
  • 3.2.1
  • 3.2.8
  • 3.2.13
  • 4.0.2
  • 4.1.8
  • 4.2.1
  • 4.2.7
  • 4.2.9
  • 5.0.0.1
  • 5.1.7
  • 5.2.3
  • 6.0.0
  • 6.1.3.1
  • 6.1.7.7
  • 7.0.0
  • 7.1.3.2
  • What's this?

Method deprecated or moved

This method is deprecated or moved on the latest stable version. The last existing version (v2.2.1) is shown here.

These similar methods exist in v6.1.7.7:

setup_fixture_accessors(table_names = nil) public

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activerecord/lib/active_record/fixtures.rb, line 875
        def setup_fixture_accessors(table_names = nil)
          table_names = [table_names] if table_names && !table_names.respond_to?(:each)
          (table_names || fixture_table_names).each do |table_name|
            table_name = table_name.to_s.tr('.', '_')

            define_method(table_name) do |*fixtures|
              force_reload = fixtures.pop if fixtures.last == true || fixtures.last == :reload

              @fixture_cache[table_name] ||= {}

              instances = fixtures.map do |fixture|
                @fixture_cache[table_name].delete(fixture) if force_reload

                if @loaded_fixtures[table_name][fixture.to_s]
                  @fixture_cache[table_name][fixture] ||= @loaded_fixtures[table_name][fixture.to_s].find
                else
                  raise StandardError, "No fixture with name '#{fixture}' found for table '#{table_name}'"
                end
              end

              instances.size == 1 ? instances.first : instances
            end
          end
        end
Register or log in to add new notes.