test/model_test.rb in paperdragon-0.0.4 vs test/model_test.rb in paperdragon-0.0.5

- old
+ new

@@ -20,16 +20,33 @@ it { Avatar.new.image[:thumb].url.must_equal "/paperdragon/Avatar-thumb" } # minimum setup - class Image + class Image < OpenStruct include Paperdragon::Model processable :image + end - def image_meta_data - {:thumb => {:uid => "Avatar-thumb"}} + it { Image.new(:image_meta_data => {:thumb => {:uid => "Avatar-thumb"}}).image[:thumb].url.must_equal "/paperdragon/Avatar-thumb" } + + + # process with #image{} + let (:logo) { Pathname("test/fixtures/apotomo.png") } + + it do + model = Image.new + model.image(logo) do |v| + v.process!(:original) + v.process!(:thumb) { |j| j.thumb!("16x16") } end - end - it { Image.new.image[:thumb].url.must_equal "/paperdragon/Avatar-thumb" } + model.image_meta_data.must_equal({:original=>{:width=>216, :height=>63, :uid=>"original-apotomo.png"}, :thumb=>{:width=>16, :height=>5, :uid=>"thumb-apotomo.png"}}) + + + model.image do |v| + v.reprocess!(:thumb, "1") { |j| j.thumb!("8x8") } + end + + model.image_meta_data.must_equal({:original=>{:width=>216, :height=>63, :uid=>"original-apotomo.png"}, :thumb=>{:width=>8, :height=>2, :uid=>"thumb-apotomo-1.png"}}) + end end \ No newline at end of file