1require "rss-testcase" 2 3require "rss/maker" 4 5module RSS 6 class TestMakerImage < TestCase 7 8 def setup 9 @uri = "http://web.resource.org/rss/1.0/modules/image/" 10 11 @favicon_infos = { 12 "about" => "http://www.kuro5hin.org/favicon.ico", 13 "image_size" => "small", 14 "dc_title" => "example", 15 } 16 @item_infos = { 17 "about" => "http://www.example.org/item.png", 18 "resource" => "http://www.example.org/item", 19 "dc_title" => "Example Image", 20 "image_width" => "100", 21 "image_height" => "65", 22 } 23 end 24 25 def test_rss10 26 rss = RSS::Maker.make("1.0") do |maker| 27 setup_dummy_channel(maker) 28 @favicon_infos.each do |name, value| 29 maker.channel.image_favicon.__send__("#{name}=", value) 30 end 31 32 setup_dummy_image(maker) 33 34 setup_dummy_item(maker) 35 item = maker.items.last 36 @item_infos.each do |name, value| 37 item.image_item.__send__("#{name}=", value) 38 end 39 40 setup_dummy_textinput(maker) 41 end 42 43 setup_rss = RSS::Maker.make("1.0") do |maker| 44 rss.setup_maker(maker) 45 end 46 47 [rss, setup_rss].each_with_index do |target, i| 48 favicon = target.channel.image_favicon 49 assert_equal(@favicon_infos["about"], favicon.about) 50 assert_equal(@favicon_infos["image_size"], favicon.image_size) 51 assert_equal(@favicon_infos["dc_title"], favicon.dc_title) 52 53 item = target.items.last.image_item 54 assert_equal(@item_infos["about"], item.about) 55 assert_equal(@item_infos["resource"], item.resource) 56 assert_equal(@item_infos["image_width"].to_i, item.image_width) 57 assert_equal(@item_infos["image_height"].to_i, item.image_height) 58 assert_equal(@item_infos["dc_title"], item.dc_title) 59 end 60 end 61 end 62end 63