Sha256: a627f9f60639802ec1e34a9c9f7d4d0872b7debe37d2270bb04b1b22fc520b09

Contents?: true

Size: 1.04 KB

Versions: 10

Compression:

Stored size: 1.04 KB

Contents

require 'test_helper'

class WithoutShortcutsTest < MiniTest::Unit::TestCase  
  def setup
    reload_db
    
    named_dummy('SlimDummy') do
      as_enum :gender, [:male, :female], :slim => true
    end
  end

  def test_that_no_shortcut_methods_are_generated_if_slime_is_true
    jane = SlimDummy.new
    jane.gender = :female
    
    # ensure that other methods still work as expected
    assert_equal 1, jane.gender_cd
    assert_equal :female, jane.gender
    
    # then check for availability  of shortcut methods
    assert !jane.respond_to?(:male!), "should not respond_to <male!>"
    assert !jane.respond_to?(:female?), "should not respond_to <female?>"
  end
  
  def test_that_saving_and_loading_from_datasource_works_even_if_slim_is_true
    anna = SlimDummy.where(:name => 'Anna').first
    
    assert_equal 1, anna.gender_cd
    assert_equal :female, anna.gender
    
    # change anna, save + reload
    anna.gender = :male
    anna.save!
    anna.reload
    
    assert_equal 0, anna.gender_cd
    assert_equal :male, anna.gender
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
simple_enum-1.6.9 test/without_shortcuts_test.rb
simple_enum-1.6.8 test/without_shortcuts_test.rb
simple_enum-1.6.7 test/without_shortcuts_test.rb
simple_enum-1.6.5 test/without_shortcuts_test.rb
simple_enum-1.6.4 test/without_shortcuts_test.rb
simple_enum-1.6.3 test/without_shortcuts_test.rb
simple_enum-1.6.2 test/without_shortcuts_test.rb
simple_enum-1.6.1 test/without_shortcuts_test.rb
simple_enum-1.5.1 test/without_shortcuts_test.rb
simple_enum-1.5.0 test/without_shortcuts_test.rb