aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorSean Griffin <sean@seantheprogrammer.com>2017-01-03 16:12:46 -0500
committerGitHub <noreply@github.com>2017-01-03 16:12:46 -0500
commit95962c4fe0d09976e90cf7e179a72085a29812a7 (patch)
treec9d5d943dd37d2273405d3c9cbd3d3278a04c523 /activerecord/test/cases
parent769b25af588d87e4570c6b454990118ab432a3aa (diff)
parent8ded825bc29338d1a2ae7c3a2119cfa301008f85 (diff)
downloadrails-95962c4fe0d09976e90cf7e179a72085a29812a7.tar.gz
rails-95962c4fe0d09976e90cf7e179a72085a29812a7.tar.bz2
rails-95962c4fe0d09976e90cf7e179a72085a29812a7.zip
Merge pull request #27517 from maclover7/jm-fix-27502
Compare deserialized values for `PostgreSQL::OID::Hstore` types
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/adapters/postgresql/hstore_test.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/hstore_test.rb b/activerecord/test/cases/adapters/postgresql/hstore_test.rb
index 1f35300739..f9cce10fb8 100644
--- a/activerecord/test/cases/adapters/postgresql/hstore_test.rb
+++ b/activerecord/test/cases/adapters/postgresql/hstore_test.rb
@@ -171,6 +171,25 @@ if ActiveRecord::Base.connection.supports_extensions?
assert_not hstore.changed?
end
+ def test_dirty_from_user_equal
+ settings = { "alongkey" => "anything", "key" => "value" }
+ hstore = Hstore.create!(settings: settings)
+
+ hstore.settings = { "key" => "value", "alongkey" => "anything" }
+ assert_equal settings, hstore.settings
+ refute hstore.changed?
+ end
+
+ def test_hstore_dirty_from_database_equal
+ settings = { "alongkey" => "anything", "key" => "value" }
+ hstore = Hstore.create!(settings: settings)
+ hstore.reload
+
+ assert_equal settings, hstore.settings
+ hstore.settings = settings
+ refute hstore.changed?
+ end
+
def test_gen1
assert_equal('" "=>""', @type.serialize(" " => ""))
end