Fixtures use the table name and connection from set_fixture_class. Closes #7330.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6023 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
be7f86e37a
commit
0eb8398cfa
@ -1,5 +1,7 @@
|
||||
*SVN*
|
||||
|
||||
* Fixtures use the table name and connection from set_fixture_class. #7330 [Anthony Eden]
|
||||
|
||||
* Remove useless code in #attribute_present? since 0 != blank?. Closes #7249 [Josh Susser]
|
||||
|
||||
* Fix minor doc typos. Closes #7157 [Josh Susser]
|
||||
|
@ -276,6 +276,8 @@ def initialize(connection, table_name, class_name, fixture_path, file_filter = D
|
||||
@class_name = class_name ||
|
||||
(ActiveRecord::Base.pluralize_table_names ? @table_name.singularize.camelize : @table_name.camelize)
|
||||
@table_name = ActiveRecord::Base.table_name_prefix + @table_name + ActiveRecord::Base.table_name_suffix
|
||||
@table_name = class_name.table_name if class_name.respond_to?(:table_name)
|
||||
@connection = class_name.connection if class_name.respond_to?(:connection)
|
||||
read_fixture_files
|
||||
end
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
require 'fixtures/task'
|
||||
require 'fixtures/reply'
|
||||
require 'fixtures/joke'
|
||||
require 'fixtures/course'
|
||||
require 'fixtures/category'
|
||||
|
||||
class FixturesTest < Test::Unit::TestCase
|
||||
@ -334,6 +335,16 @@ def test_table_method
|
||||
end
|
||||
end
|
||||
|
||||
class CustomConnectionFixturesTest < Test::Unit::TestCase
|
||||
set_fixture_class :courses => Course
|
||||
fixtures :courses
|
||||
|
||||
def test_connection
|
||||
assert_kind_of Course, courses(:ruby)
|
||||
assert_equal Course.connection, courses(:ruby).connection
|
||||
end
|
||||
end
|
||||
|
||||
class InvalidTableNameFixturesTest < Test::Unit::TestCase
|
||||
fixtures :funny_jokes
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user