feedtools 0.2.13 → 0.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +2 -0
- data/lib/feed_tools.rb +1 -1
- data/lib/feed_tools/feed.rb +7 -4
- data/rakefile +1 -1
- data/test/cache_test.rb +18 -0
- metadata +1 -1
data/CHANGELOG
CHANGED
data/lib/feed_tools.rb
CHANGED
@@ -32,7 +32,7 @@ FEED_TOOLS_ENV = ENV['FEED_TOOLS_ENV'] ||
|
|
32
32
|
ENV['RAILS_ENV'] ||
|
33
33
|
'production' # :nodoc:
|
34
34
|
|
35
|
-
FEED_TOOLS_VERSION = "0.2.
|
35
|
+
FEED_TOOLS_VERSION = "0.2.14"
|
36
36
|
|
37
37
|
$:.unshift(File.dirname(__FILE__))
|
38
38
|
$:.unshift(File.dirname(__FILE__) + "/feed_tools/vendor")
|
data/lib/feed_tools/feed.rb
CHANGED
@@ -1789,9 +1789,11 @@ module FeedTools
|
|
1789
1789
|
return @live
|
1790
1790
|
end
|
1791
1791
|
|
1792
|
-
# True if the feed has expired and must be reacquired from the remote
|
1792
|
+
# True if the feed has expired and must be reacquired from the remote
|
1793
|
+
# server.
|
1793
1794
|
def expired?
|
1794
|
-
return self.last_retrieved == nil ||
|
1795
|
+
return self.last_retrieved == nil ||
|
1796
|
+
(self.last_retrieved + self.time_to_live) < Time.now
|
1795
1797
|
end
|
1796
1798
|
|
1797
1799
|
# Forces this feed to expire.
|
@@ -1800,8 +1802,9 @@ module FeedTools
|
|
1800
1802
|
self.save
|
1801
1803
|
end
|
1802
1804
|
|
1803
|
-
# A hook method that is called during the feed generation process.
|
1804
|
-
# will enable additional content to be
|
1805
|
+
# A hook method that is called during the feed generation process.
|
1806
|
+
# Overriding this method will enable additional content to be
|
1807
|
+
# inserted into the feed.
|
1805
1808
|
def build_xml_hook(feed_type, version, xml_builder)
|
1806
1809
|
return nil
|
1807
1810
|
end
|
data/rakefile
CHANGED
data/test/cache_test.rb
CHANGED
@@ -53,4 +53,22 @@ class CacheTest < Test::Unit::TestCase
|
|
53
53
|
entries = FeedTools::DatabaseFeedCache.find_all_by_url(slashdot_feed.url)
|
54
54
|
assert_equal(1, entries.size)
|
55
55
|
end
|
56
|
+
|
57
|
+
def test_cached_item_expiration
|
58
|
+
# Ensure the cache is on for this test
|
59
|
+
FeedTools.feed_cache = FeedTools::DatabaseFeedCache
|
60
|
+
|
61
|
+
slashdot_feed = FeedTools::Feed.open('http://www.slashdot.org/index.rss')
|
62
|
+
assert(slashdot_feed.feed_data != nil, "No content retrieved.")
|
63
|
+
slashdot_feed.expire!
|
64
|
+
assert_equal(true, slashdot_feed.expired?)
|
65
|
+
slashdot_feed = FeedTools::Feed.open('http://www.slashdot.org/index.rss')
|
66
|
+
assert(slashdot_feed.feed_data != nil, "No content retrieved.")
|
67
|
+
assert_equal(true, slashdot_feed.live?)
|
68
|
+
slashdot_feed.time_to_live = 1.hour
|
69
|
+
slashdot_feed.last_retrieved = (Time.now - 55.minute)
|
70
|
+
assert_equal(false, slashdot_feed.expired?)
|
71
|
+
slashdot_feed.last_retrieved = (Time.now - 61.minute)
|
72
|
+
assert_equal(true, slashdot_feed.expired?)
|
73
|
+
end
|
56
74
|
end
|
metadata
CHANGED