From 3465feb90b0d8401ad9b101929dbed11707a2eca Mon Sep 17 00:00:00 2001 From: kou Date: Sun, 7 Oct 2007 13:42:22 +0000 Subject: * test/rss/test_taxonomy.rb, test/rss/test_parser_1.0.rb, test/rss/test_image.rb, test/rss/rss-testcase.rb: ensured declaring XML namespaces. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/rss/rss-testcase.rb | 9 ++++++++- test/rss/test_image.rb | 27 ++++++++++++++++++++------- test/rss/test_parser_1.0.rb | 3 ++- test/rss/test_taxonomy.rb | 16 ++++++++++++++-- 4 files changed, 44 insertions(+), 11 deletions(-) (limited to 'test/rss') diff --git a/test/rss/rss-testcase.rb b/test/rss/rss-testcase.rb index baac597c00..0fd9b5263f 100644 --- a/test/rss/rss-testcase.rb +++ b/test/rss/rss-testcase.rb @@ -332,7 +332,14 @@ EOA "<#{h elem_name} #{attrs_str}>\n#{contents_str}\n" end - + + def xmlns_container(xmlns_decls, content) + attributes = xmlns_decls.collect do |prefix, uri| + "xmlns:#{h prefix}=\"#{h uri}\"" + end.join(" ") + "#{content}" + end + private def setup_rss10(rdf) assert_equal("", rdf.to_s) diff --git a/test/rss/test_image.rb b/test/rss/test_image.rb index 45e99c3c23..101b7ffda2 100644 --- a/test/rss/test_image.rb +++ b/test/rss/test_image.rb @@ -173,19 +173,23 @@ EOR def test_favicon_to_s favicon = @rss.channel.image_favicon - expected = REXML::Document.new(make_element("#{@prefix}:favicon", - @favicon_attrs, - @favicon_contents)) - actual = REXML::Document.new(favicon.to_s(false, "")) + expected_xml = image_xmlns_container(make_element("#{@prefix}:favicon", + @favicon_attrs, + @favicon_contents)) + expected = REXML::Document.new(expected_xml) + actual_xml = image_xmlns_container(favicon.to_s(false, "")) + actual = REXML::Document.new(actual_xml) assert_equal(expected.to_s, actual.to_s) end def test_item_to_s @rss.items.each_with_index do |item, i| attrs, contents = @items[i] - expected_s = make_element("#{@prefix}:item", attrs, contents) - expected = REXML::Document.new(expected_s) - actual = REXML::Document.new(item.image_item.to_s(false, "")) + expected_xml = make_element("#{@prefix}:item", attrs, contents) + expected_xml = image_xmlns_container(expected_xml) + expected = REXML::Document.new(expected_xml) + actual_xml = image_xmlns_container(item.image_item.to_s(false, "")) + actual = REXML::Document.new(actual_xml) assert_equal(expected[0].attributes, actual[0].attributes) @@ -197,5 +201,14 @@ EOR end end + private + def image_xmlns_container(content) + xmlns_container({ + @prefix => @uri, + "dc" => "http://purl.org/dc/elements/1.1/", + "rdf" => "http://www.w3.org/1999/02/22-rdf-syntax-ns#", + }, + content) + end end end diff --git a/test/rss/test_parser_1.0.rb b/test/rss/test_parser_1.0.rb index 1c4e53c1da..216881b767 100644 --- a/test/rss/test_parser_1.0.rb +++ b/test/rss/test_parser_1.0.rb @@ -500,7 +500,8 @@ EOR end def test_unknown_duplicated_element - assert_parse(make_RDF(<<-EOR), :nothing_raised) + xmlns = {"test" => "http://localhost/test"} + assert_parse(make_RDF(<<-EOR, xmlns), :nothing_raised) #{make_channel("")} #{make_item} #{make_image} diff --git a/test/rss/test_taxonomy.rb b/test/rss/test_taxonomy.rb index 42746af490..59cb2f0585 100644 --- a/test/rss/test_taxonomy.rb +++ b/test/rss/test_taxonomy.rb @@ -144,8 +144,10 @@ EOR end @topic_nodes.each_with_index do |node, i| - expected = REXML::Document.new(node).root - actual = REXML::Document.new(@rss.taxo_topics[i].to_s(true, "")).root + expected_xml = taxo_xmlns_container(node) + expected = REXML::Document.new(expected_xml).root.elements[1] + actual_xml = taxo_xmlns_container(@rss.taxo_topics[i].to_s(true, "")) + actual = REXML::Document.new(actual_xml).root.elements[1] expected_elems = expected.reject {|x| x.is_a?(REXML::Text)} actual_elems = actual.reject {|x| x.is_a?(REXML::Text)} expected_elems.sort! {|x, y| x.name <=> y.name} @@ -155,6 +157,16 @@ EOR assert_equal(expected.attributes.sort, actual.attributes.sort) end end + + private + def taxo_xmlns_container(content) + xmlns_container({ + @prefix => @uri, + "dc" => "http://purl.org/dc/elements/1.1/", + "rdf" => "http://www.w3.org/1999/02/22-rdf-syntax-ns#", + }, + content) + end end end -- cgit v1.2.3