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