From 456ba712fe921f2387611055b67090d70dfad071 Mon Sep 17 00:00:00 2001 From: kou Date: Fri, 25 Nov 2005 03:43:48 +0000 Subject: * lib/rss/rss.rb: improved type conversion. * lib/rss/1.0.rb: ditto. * lib/rss/0.9.rb: ditto. * lib/rss/2.0.rb: ditto. * lib/rss/image.rb: ditto. * lib/rss/syndication.rb: ditto. * test/rss/test_2.0.rb: added type conversion tests. * test/rss/test_accessor.rb: ditto. * test/rss/test_to_s.rb: ditto. * test/rss/test_syndication.rb: ditto. * test/rss/test_setup_maker_2.0.rb: ditto. * test/rss/test_setup_maker_1.0.rb: ditto. * test/rss/test_setup_maker_0.9.rb: ditto. * test/rss/test_maker_sy.rb: ditto. * test/rss/test_maker_image.rb: ditto. * test/rss/test_maker_2.0.rb: ditto. * test/rss/test_maker_0.9.rb: ditto. * test/rss/test_image.rb: ditto. * test/rss/test_maker_1.0.rb: use assert instead of assert_equal. * test/rss/rss-assertions.rb: improved type conversion assertions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rss/2.0.rb | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) (limited to 'lib/rss/2.0.rb') diff --git a/lib/rss/2.0.rb b/lib/rss/2.0.rb index 66474ff76d..1c3c22ee70 100644 --- a/lib/rss/2.0.rb +++ b/lib/rss/2.0.rb @@ -6,16 +6,14 @@ module RSS class Channel - %w(generator ttl).each do |name| - install_text_element(name) + [ + ["generator"], + ["ttl", :integer], + ].each do |name, type| + install_text_element(name, type) install_model(name, '?') end - remove_method :ttl= - def ttl=(value) - @ttl = value.to_i - end - [ %w(category categories), ].each do |name, plural_name| @@ -126,17 +124,24 @@ EOT include RSS09 [ - ["isPermaLink", nil, false] - ].each do |name, uri, required| - install_get_attribute(name, uri, required) + ["isPermaLink", nil, false, :boolean] + ].each do |name, uri, required, type| + install_get_attribute(name, uri, required, type) end content_setup def initialize(isPermaLink=nil, content=nil) super() - @isPermaLink = isPermaLink - @content = content + self.isPermaLink = isPermaLink + self.content = content + end + + alias_method :_PermaLink?, :PermaLink? + private :_PermaLink? + def PermaLink? + perma = _PermaLink? + perma or perma.nil? end private -- cgit v1.2.3