aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2017-12-18 01:40:55 +0900
committerRyuta Kamizono <kamipo@gmail.com>2017-12-18 01:52:54 +0900
commitde354cc3573e8b6e81448080a21c313f5bdbab7b (patch)
treeae152e243042b03e28b6d68f53a2d30fd6203d28 /activerecord/test
parent475a0f887ce4087443fdf7c5f3f066c90fb00126 (diff)
downloadrails-de354cc3573e8b6e81448080a21c313f5bdbab7b.tar.gz
rails-de354cc3573e8b6e81448080a21c313f5bdbab7b.tar.bz2
rails-de354cc3573e8b6e81448080a21c313f5bdbab7b.zip
Using table name qualified column names unless having SELECT list explicitly
Previously table name qualified `*` is used in that case. If it is not qualified with a table name, an ambiguous column name error will occur when using JOINs.
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/base_test.rb10
1 files changed, 7 insertions, 3 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 7fc4a396e4..b076b452e7 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1498,10 +1498,14 @@ class BasicsTest < ActiveRecord::TestCase
test "column names are quoted when using #from clause and model has ignored columns" do
refute_empty Developer.ignored_columns
- query = Developer.from("`developers`").to_sql
- quoted_id = Developer.connection.quote_table_name("id")
+ query = Developer.from("developers").to_sql
+ quoted_id = "#{Developer.quoted_table_name}.#{Developer.quoted_primary_key}"
- assert_match(/SELECT #{quoted_id}.* FROM `developers`/, query)
+ assert_match(/SELECT #{quoted_id}.* FROM developers/, query)
+ end
+
+ test "using table name qualified column names unless having SELECT list explicitly" do
+ assert_equal developers(:david), Developer.from("developers").joins(:shared_computers).take
end
test "protected environments by default is an array with production" do