aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--activerecord/lib/active_record/fixture_set/model_metadata.rb11
-rw-r--r--activerecord/lib/active_record/fixture_set/table_rows.rb2
-rw-r--r--activerecord/lib/active_record/fixtures.rb4
3 files changed, 4 insertions, 13 deletions
diff --git a/activerecord/lib/active_record/fixture_set/model_metadata.rb b/activerecord/lib/active_record/fixture_set/model_metadata.rb
index edc03939c8..fb23df6f45 100644
--- a/activerecord/lib/active_record/fixture_set/model_metadata.rb
+++ b/activerecord/lib/active_record/fixture_set/model_metadata.rb
@@ -3,9 +3,8 @@
module ActiveRecord
class FixtureSet
class ModelMetadata # :nodoc:
- def initialize(model_class, table_name)
+ def initialize(model_class)
@model_class = model_class
- @table_name = table_name
end
def primary_key_name
@@ -23,18 +22,12 @@ module ActiveRecord
def timestamp_column_names
@timestamp_column_names ||=
- %w(created_at created_on updated_at updated_on) & column_names
+ %w(created_at created_on updated_at updated_on) & @model_class.column_names
end
def inheritance_column_name
@inheritance_column_name ||= @model_class && @model_class.inheritance_column
end
-
- private
-
- def column_names
- @column_names ||= @model_class.connection.columns(@table_name).collect(&:name)
- end
end
end
end
diff --git a/activerecord/lib/active_record/fixture_set/table_rows.rb b/activerecord/lib/active_record/fixture_set/table_rows.rb
index 3e3c0bc7ab..8a99df29ce 100644
--- a/activerecord/lib/active_record/fixture_set/table_rows.rb
+++ b/activerecord/lib/active_record/fixture_set/table_rows.rb
@@ -58,7 +58,7 @@ module ActiveRecord
end
def model_metadata
- @model_metadata ||= ModelMetadata.new(model_class, table_name)
+ @model_metadata ||= ModelMetadata.new(model_class)
end
def resolve_sti_reflections(row)
diff --git a/activerecord/lib/active_record/fixtures.rb b/activerecord/lib/active_record/fixtures.rb
index 1dead09073..1248ed00c5 100644
--- a/activerecord/lib/active_record/fixtures.rb
+++ b/activerecord/lib/active_record/fixtures.rb
@@ -629,9 +629,7 @@ module ActiveRecord
@fixtures = read_fixture_files(path)
- @table_name = (model_class.respond_to?(:table_name) ?
- model_class.table_name :
- self.class.default_fixture_table_name(name, config))
+ @table_name = model_class&.table_name || self.class.default_fixture_table_name(name, config)
end
def [](x)