diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2016-07-31 05:08:15 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2016-07-31 05:16:20 +0900 |
commit | 83f08647d659b3b3e3052215fa0c42324ec81fb7 (patch) | |
tree | 9a60ae27310dd6220532184277f8f5270c1292d8 /activerecord/test | |
parent | 815b730b1b79158511f9f4c8465c476b9fe9b7e0 (diff) | |
download | rails-83f08647d659b3b3e3052215fa0c42324ec81fb7.tar.gz rails-83f08647d659b3b3e3052215fa0c42324ec81fb7.tar.bz2 rails-83f08647d659b3b3e3052215fa0c42324ec81fb7.zip |
Fix `enum` with `alias_attribute`
Fixes #25892.
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/cases/enum_test.rb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/activerecord/test/cases/enum_test.rb b/activerecord/test/cases/enum_test.rb index e781b60464..1ee6f71d08 100644 --- a/activerecord/test/cases/enum_test.rb +++ b/activerecord/test/cases/enum_test.rb @@ -393,6 +393,22 @@ class EnumTest < ActiveRecord::TestCase assert book2.single? end + test "enum with alias_attribute" do + klass = Class.new(ActiveRecord::Base) do + self.table_name = "books" + alias_attribute :aliased_status, :status + enum aliased_status: [:proposed, :written, :published] + end + + book = klass.proposed.create! + assert book.proposed? + assert_equal 'proposed', book.aliased_status + + book = klass.find(book.id) + assert book.proposed? + assert_equal 'proposed', book.aliased_status + end + test "query state by predicate with prefix" do assert @book.author_visibility_visible? assert_not @book.author_visibility_invisible? |