require 'cases/helper' require 'models/book' class EnumTest < ActiveRecord::TestCase fixtures :books setup do @book = books(:awdr) end test "query state by predicate" do assert @book.proposed? assert_not @book.written? assert_not @book.published? assert @book.unread? end test "query state with symbol" do assert_equal :proposed, @book.status assert_equal :unread, @book.read_status end test "find via scope" do assert_equal @book, Book.proposed.first assert_equal @book, Book.unread.first end test "update by declaration" do @book.written! assert @book.written? end test "update by setter" do @book.update! status: :written assert @book.written? end end