aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorSean Griffin <sean@seantheprogrammer.com>2015-09-24 09:08:43 -0600
committerSean Griffin <sean@seantheprogrammer.com>2015-09-24 09:08:43 -0600
commit8587cf0d930832c362249ccec5fe896bd6563e2b (patch)
tree298ca6c3f0a593cb55f9fe90c4f69b7647d43e94 /activerecord/test/cases
parent4a375a83deab7a3089e718a1d18ddc4c2846cd40 (diff)
parent4ccdd4122dfdab200c02f78a994f4112d6164164 (diff)
downloadrails-8587cf0d930832c362249ccec5fe896bd6563e2b.tar.gz
rails-8587cf0d930832c362249ccec5fe896bd6563e2b.tar.bz2
rails-8587cf0d930832c362249ccec5fe896bd6563e2b.zip
Merge pull request #21720 from byroot/ignore-columns
Implement ActiveRecord::Base.ignored_columns
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/base_test.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 991145bed4..d6c48b99f3 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1571,4 +1571,22 @@ class BasicsTest < ActiveRecord::TestCase
assert_not topic.id_changed?
end
+
+ test "ignored columns are not present in columns_hash" do
+ cache_columns = Developer.connection.schema_cache.columns_hash(Developer.table_name)
+ assert_includes cache_columns.keys, 'first_name'
+ refute_includes Developer.columns_hash.keys, 'first_name'
+ end
+
+ test "ignored columns have no attirbute methods" do
+ refute Developer.new.respond_to?(:first_name)
+ refute Developer.new.respond_to?(:first_name=)
+ refute Developer.new.respond_to?(:first_name?)
+ end
+
+ test "ignored columns don't prevent explicit declaration of attribute methods" do
+ assert Developer.new.respond_to?(:last_name)
+ assert Developer.new.respond_to?(:last_name=)
+ assert Developer.new.respond_to?(:last_name?)
+ end
end