Sha256: 31d0c7f442d7220534286a2911eb1b24b25e70d35aef13f0d91c2cbd59e167fe
Contents?: true
Size: 1.9 KB
Versions: 2
Compression:
Stored size: 1.9 KB
Contents
require 'helper' setup_mongoid class MongoUser include Mongoid::Document include HasConstant include HasConstant::Orm::Mongoid field :salutation, :type => Integer has_constant :salutations, ['Mr', 'Mrs'] end if defined?(Mongoid) class MongoUserWithProc include Mongoid::Document include HasConstant include HasConstant::Orm::Mongoid field :salutation, :type => Integer has_constant :salutations, lambda { ['Mr', 'Mrs'] } end if defined?(Mongoid) class MongoidTest < Test::Unit::TestCase context 'Instance' do should 'save values as integers' do m = MongoUser.new(:salutation => 'Mr') m.save! assert_equal 'Mr', m.salutation assert_equal 0, m.attributes['salutation'] end should 'not be valid when an incorrect value is supplied' do m = MongoUser.new(:salutation => 'asefe') assert !m.valid? assert_equal ['must be one of Mr, Mrs'], m.errors[:salutation] end should 'not be valid with an incorrect value is supplied and a proc/lambda has been used' do m = MongoUserWithProc.new(:salutation => 'asefe') assert !m.valid? assert_equal ['must be one of Mr, Mrs'], m.errors[:salutation] end end context 'Named Scopes' do setup do @man = MongoUser.create!(:salutation => 'Mr') @woman = MongoUser.create!(:salutation => 'Mrs') end should 'provide by_constant scope' do assert_equal 1, MongoUser.by_constant('salutation', 'Mr').count assert_equal @man, MongoUser.by_constant('salutation', 'Mr').first end should 'provide singular_is scope' do assert_equal 1, MongoUser.salutation_is('Mr').count assert_equal @man, MongoUser.salutation_is('Mr').first end should 'provide singular_is_not scope' do assert_equal 1, MongoUser.salutation_is_not('Mr').count assert_equal @woman, MongoUser.salutation_is_not('Mr').first end end end if defined?(Mongoid)
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
has_constant-0.2.5 | test/unit/orm/mongoid_test.rb |
has_constant-0.2.4 | test/unit/orm/mongoid_test.rb |