Submit
Path:
~
/
/
lib
/
ruby
/
gems
/
3.0.0
/
gems
/
rss-0.2.9
/
test
/
File Content:
test_1.0.rb
# frozen_string_literal: false require "rexml/document" require_relative "rss-testcase" require "rss/1.0" module RSS class TestRSS10Core < TestCase def setup @rdf_prefix = "rdf" @rdf_uri = "http://www.w3.org/1999/02/22-rdf-syntax-ns#" @uri = "http://purl.org/rss/1.0/" end def test_RDF version = "1.0" encoding = "UTF-8" standalone = false rdf = RDF.new(version, encoding, standalone) setup_rss10(rdf) doc = REXML::Document.new(rdf.to_s) xmldecl = doc.xml_decl assert_equal(version, xmldecl.version) assert_equal(encoding, xmldecl.encoding.to_s) assert_equal(standalone, !xmldecl.standalone.nil?) assert_equal(@rdf_uri, doc.root.namespace) end def test_not_displayed_xml_stylesheets rdf = RDF.new() plain_rdf = rdf.to_s 3.times do rdf.xml_stylesheets.push(XMLStyleSheet.new) assert_equal(plain_rdf, rdf.to_s) end end def test_xml_stylesheets [ [{:href => "a.xsl", :type => "text/xsl"}], [ {:href => "a.xsl", :type => "text/xsl"}, {:href => "a.css", :type => "text/css"}, ], ].each do |attrs_ary| assert_xml_stylesheet_pis(attrs_ary) end end def test_channel about = "http://hoge.com" resource = "http://hoge.com/hoge.png" item_title = "item title" item_link = "http://hoge.com/item" image = RDF::Channel::Image.new(resource) items = RDF::Channel::Items.new items.Seq.lis << items.class::Seq::Li.new(item_link) textinput = RDF::Channel::Textinput.new(resource) rss_item = RDF::Item.new rss_item.title = item_title rss_item.link = item_link rss_item.about = item_link h = { 'title' => "fugafuga", 'link' => "http://hoge.com", 'description' => "fugafugafugafuga", 'image' => image, 'items' => items, 'textinput' => textinput, } channel = RDF::Channel.new(about) %w(title link description image items textinput).each do |x| channel.__send__("#{x}=", h[x]) end doc = REXML::Document.new(make_RDF(<<-EOR)) #{channel} <items> #{rss_item} </items> EOR c = doc.root.elements[1] assert_equal(about, c.attributes["about"]) %w(title link description image textinput).each do |x| elem = c.elements[x] assert_equal(x, elem.name) assert_equal(@uri, elem.namespace) if x == "image" or x == "textinput" excepted = resource res = elem.attributes.get_attribute("resource") assert_equal(@rdf_uri, res.namespace) value = res.value else excepted = h[x] value = elem.text end assert_equal(excepted, value) end assert_equal(@uri, c.elements["items"].namespace) assert_equal("items", c.elements["items"].name) end def test_channel_image resource = "http://hoge.com/hoge.png" image = RDF::Channel::Image.new(resource) doc = REXML::Document.new(make_RDF(image.to_s)) i = doc.root.elements[1] assert_equal("image", i.name) assert_equal(@uri, i.namespace) res = i.attributes.get_attribute("resource") assert_equal(@rdf_uri, res.namespace) assert_equal(resource, res.value) end def test_channel_textinput resource = "http://hoge.com/hoge.png" textinput = RDF::Channel::Textinput.new(resource) doc = REXML::Document.new(make_RDF(textinput.to_s)) t = doc.root.elements[1] assert_equal("textinput", t.name) assert_equal(@uri, t.namespace) res = t.attributes.get_attribute("resource") assert_equal(@rdf_uri, res.namespace) assert_equal(resource, res.value) end def test_channel_items item_link = "http://example.com/item" items = RDF::Channel::Items.new li = items.Seq.class::Li.new(item_link) items.Seq.lis << li doc = REXML::Document.new(make_RDF(items.to_s)) i = doc.root.elements[1] assert_equal("items", i.name) assert_equal(@uri, i.namespace) assert_equal(1, i.elements.size) seq = i.elements[1] assert_equal("Seq", seq.name) assert_equal(@rdf_uri, seq.namespace) assert_equal(1, seq.elements.size) l = seq.elements[1] assert_equal("li", l.name) assert_equal(@rdf_uri, l.namespace) assert_equal(item_link, l.attributes["resource"]) end def test_seq item_link = "http://example.com/item" seq = RDF::Seq.new li = seq.class::Li.new(item_link) seq.lis << li doc = REXML::Document.new(make_RDF(seq.to_s)) s = doc.root.elements[1] assert_equal("Seq", s.name) assert_equal(@rdf_uri, s.namespace) assert_equal(1, s.elements.size) l = s.elements[1] assert_equal("li", l.name) assert_equal(@rdf_uri, l.namespace) assert_equal(item_link, l.attributes["resource"]) end def test_li resource = "http://hoge.com/" li = RDF::Li.new(resource) doc = REXML::Document.new(make_RDF(li.to_s)) l = doc.root.elements[1] assert_equal("li", l.name) assert_equal(@rdf_uri, l.namespace(l.prefix)) res = l.attributes.get_attribute("resource") assert_equal('', res.instance_eval("@prefix")) assert_equal(resource, res.value) end def test_image about = "http://hoge.com" h = { 'title' => "fugafuga", 'url' => "http://hoge.com/hoge", 'link' => "http://hoge.com/fuga", } image = RDF::Image.new(about) %w(title url link).each do |x| image.__send__("#{x}=", h[x]) end doc = REXML::Document.new(make_RDF(image.to_s)) i = doc.root.elements[1] assert_equal(about, i.attributes["about"]) %w(title url link).each do |x| elem = i.elements[x] assert_equal(x, elem.name) assert_equal(@uri, elem.namespace) assert_equal(h[x], elem.text) end end def test_item about = "http://hoge.com" h = { 'title' => "fugafuga", 'link' => "http://hoge.com/fuga", 'description' => "hogehogehoge", } item = RDF::Item.new(about) %w(title link description).each do |x| item.__send__("#{x}=", h[x]) end doc = REXML::Document.new(make_RDF(item.to_s)) i = doc.root.elements[1] assert_equal(about, i.attributes["about"]) %w(title link description).each do |x| elem = i.elements[x] assert_equal(x, elem.name) assert_equal(@uri, elem.namespace) assert_equal(h[x], elem.text) end end def test_textinput about = "http://hoge.com" h = { 'title' => "fugafuga", 'link' => "http://hoge.com/fuga", 'name' => "foo", 'description' => "hogehogehoge", } textinput = RDF::Textinput.new(about) %w(title link name description).each do |x| textinput.__send__("#{x}=", h[x]) end doc = REXML::Document.new(make_RDF(textinput.to_s)) t = doc.root.elements[1] assert_equal(about, t.attributes["about"]) %w(title link name description).each do |x| elem = t.elements[x] assert_equal(x, elem.name) assert_equal(@uri, elem.namespace) assert_equal(h[x], elem.text) end end def test_to_xml rss = RSS::Parser.parse(make_sample_RDF) assert_equal(rss.to_s, rss.to_xml) assert_equal(rss.to_s, rss.to_xml("1.0")) rss09 = rss.to_xml("0.91") do |maker| maker.channel.language = "en-us" end rss09 = RSS::Parser.parse(rss09) assert_equal("0.91", rss09.rss_version) assert_equal(["rss", "0.91", nil], rss09.feed_info) rss20 = RSS::Parser.parse(rss.to_xml("2.0")) assert_equal("2.0", rss20.rss_version) assert_equal(["rss", "2.0", nil], rss20.feed_info) atom_xml = rss.to_xml("atom") do |maker| maker.channel.author = "Alice" maker.channel.updated ||= Time.now maker.items.each do |item| item.updated ||= Time.now end end atom = RSS::Parser.parse(atom_xml) assert_equal(["atom", "1.0", "feed"], atom.feed_info) end end end
Edit
Rename
Chmod
Delete
FILE
FOLDER
INFO
Name
Size
Permission
Action
dot.png
109 bytes
0644
rss-assertions.rb
70726 bytes
0644
rss-testcase.rb
11967 bytes
0644
run-test.rb
290 bytes
0644
test_1.0.rb
8353 bytes
0644
test_2.0.rb
12582 bytes
0644
test_accessor.rb
2565 bytes
0644
test_atom.rb
22324 bytes
0644
test_content.rb
2674 bytes
0644
test_dublincore.rb
9271 bytes
0644
test_image.rb
7058 bytes
0644
test_inherit.rb
1087 bytes
0644
test_itunes.rb
13695 bytes
0644
test_maker_0.9.rb
14162 bytes
0644
test_maker_1.0.rb
14729 bytes
0644
test_maker_2.0.rb
22680 bytes
0644
test_maker_atom_entry.rb
14097 bytes
0644
test_maker_atom_feed.rb
16574 bytes
0644
test_maker_content.rb
1049 bytes
0644
test_maker_dc.rb
4247 bytes
0644
test_maker_image.rb
1883 bytes
0644
test_maker_itunes.rb
19420 bytes
0644
test_maker_slash.rb
832 bytes
0644
test_maker_sy.rb
919 bytes
0644
test_maker_taxo.rb
2292 bytes
0644
test_maker_trackback.rb
1000 bytes
0644
test_maker_xml-stylesheet.rb
2041 bytes
0644
test_parser.rb
2832 bytes
0644
test_parser_1.0.rb
12359 bytes
0644
test_parser_2.0.rb
2955 bytes
0644
test_parser_atom_entry.rb
4302 bytes
0644
test_parser_atom_feed.rb
7630 bytes
0644
test_setup_maker_0.9.rb
7049 bytes
0644
test_setup_maker_1.0.rb
16592 bytes
0644
test_setup_maker_2.0.rb
9174 bytes
0644
test_setup_maker_atom_entry.rb
12667 bytes
0644
test_setup_maker_atom_feed.rb
13859 bytes
0644
test_setup_maker_itunes.rb
4555 bytes
0644
test_setup_maker_slash.rb
1023 bytes
0644
test_slash.rb
1349 bytes
0644
test_syndication.rb
3124 bytes
0644
test_taxonomy.rb
5076 bytes
0644
test_to_s.rb
19680 bytes
0644
test_trackback.rb
3770 bytes
0644
test_xml-stylesheet.rb
3562 bytes
0644
N4ST4R_ID | Naxtarrr