test/test_characterizable.rb in characterizable-0.0.17 vs test/test_characterizable.rb in characterizable-0.1.0

- old
+ new

@@ -37,17 +37,18 @@ end end class SimpleAutomobile include Characterizable - attr_accessor :make - attr_accessor :model - attr_accessor :variant + attr_accessor :make, :model, :variant + characterize do has :make - has :model - has :variant, :trumps => :model + has :model, :display => lambda { |c| "Brand new #{c}" } + has :variant, :trumps => :model do + displays { |v| "Featuring #{v}" } + end end end class Universe include Characterizable @@ -443,7 +444,15 @@ assert_equal [:antimatter], a.characteristics.effective.keys assert_equal [], a.characteristics.potential.keys assert_equal [], a.characteristics.wasted.keys assert_equal [], a.characteristics.lacking.keys assert_equal [], a.characteristics.trumped.keys + end + + should 'display custom formats' do + sa = SimpleAutomobile.new + sa.model = 'FIT' + assert_equal 'Brand new FIT', sa.display_characteristic(:model) + sa.variant = 'Extreme Edition' + assert_equal 'Featuring Extreme Edition', sa.display_characteristic(:variant) end end