Fix the test defining the models in the right place

上级 989cccdc
...@@ -16,6 +16,8 @@ ...@@ -16,6 +16,8 @@
require 'models/toy' require 'models/toy'
require 'models/invoice' require 'models/invoice'
require 'models/line_item' require 'models/line_item'
require 'models/column'
require 'models/record'
class BelongsToAssociationsTest < ActiveRecord::TestCase class BelongsToAssociationsTest < ActiveRecord::TestCase
fixtures :accounts, :companies, :developers, :projects, :topics, fixtures :accounts, :companies, :developers, :projects, :topics,
...@@ -886,21 +888,9 @@ def test_reflect_the_most_recent_change ...@@ -886,21 +888,9 @@ def test_reflect_the_most_recent_change
end end
end end
test 'belongs_to works with model name Record' do test 'belongs_to works with model called Record' do
Record = Class.new(ActiveRecord::Base) do
connection.create_table :records
end
Foo = Class.new(ActiveRecord::Base) do
connection.create_table :foos do |t|
t.belongs_to :record
end
belongs_to :record
end
record = Record.create! record = Record.create!
Foo.create! record: record Column.create! record: record
assert_equal 1, Foo.count assert_equal 1, Column.count
end end
end end
class Column < ActiveRecord::Base
belongs_to :record
end
class Record < ActiveRecord::Base
end
...@@ -161,6 +161,10 @@ def create_table(*args, &block) ...@@ -161,6 +161,10 @@ def create_table(*args, &block)
t.integer :references, null: false t.integer :references, null: false
end end
create_table :columns, force: true do |t|
t.references :record
end
create_table :comments, force: true do |t| create_table :comments, force: true do |t|
t.integer :post_id, null: false t.integer :post_id, null: false
# use VARCHAR2(4000) instead of CLOB datatype as CLOB data type has many limitations in # use VARCHAR2(4000) instead of CLOB datatype as CLOB data type has many limitations in
...@@ -819,6 +823,8 @@ def create_table(*args, &block) ...@@ -819,6 +823,8 @@ def create_table(*args, &block)
t.integer :department_id t.integer :department_id
end end
create_table :records, force: true do |t|
end
except 'SQLite' do except 'SQLite' do
# fk_test_has_fk should be before fk_test_has_pk # fk_test_has_fk should be before fk_test_has_pk
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册