jsl-feedzirra 0.0.12.1 → 0.0.12.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/feedzirra/backend/dev_null.rb +21 -0
- data/lib/feedzirra.rb +1 -0
- data/spec/feedzirra/backend/dev_null_spec.rb +35 -0
- data/spec/feedzirra/backend/filesystem_spec.rb +23 -0
- data/spec/feedzirra/backend/memcache_spec.rb +25 -0
- data/spec/feedzirra/backend/memory_spec.rb +14 -0
- data/spec/spec_helper.rb +1 -1
- metadata +6 -1
@@ -0,0 +1,21 @@
|
|
1
|
+
module Feedzirra
|
2
|
+
module Backend
|
3
|
+
|
4
|
+
# Class exists for cases where you don't want Feedzirra to remember what
|
5
|
+
# it has fetched. If this backend is selected, user needs to pass arguments
|
6
|
+
# in the form of a Feed object to the Reader class to help Feedzirra know when
|
7
|
+
# a page hasn't changed, and which feed entries have been updated.
|
8
|
+
class DevNull
|
9
|
+
|
10
|
+
def initialize(options = { })
|
11
|
+
end
|
12
|
+
|
13
|
+
def get(url)
|
14
|
+
end
|
15
|
+
|
16
|
+
def set(url, result)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
data/lib/feedzirra.rb
CHANGED
@@ -0,0 +1,35 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), %w[.. .. spec_helper])
|
2
|
+
|
3
|
+
describe Feedzirra::Backend::DevNull do
|
4
|
+
before do
|
5
|
+
@backend = Feedzirra::Backend::DevNull.new
|
6
|
+
end
|
7
|
+
|
8
|
+
it_should_behave_like "all backends"
|
9
|
+
|
10
|
+
it "should initialize properly" do
|
11
|
+
Feedzirra::Backend::DevNull.new
|
12
|
+
end
|
13
|
+
|
14
|
+
describe "#set" do
|
15
|
+
it "should accept two arguments" do
|
16
|
+
lambda {
|
17
|
+
@backend.set('foo', 'nothing')
|
18
|
+
}.should_not raise_error
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe "#get" do
|
23
|
+
it "should accept one argument" do
|
24
|
+
lambda {
|
25
|
+
@backend.get('foo')
|
26
|
+
}.should_not raise_error
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should return nil even after something is set" do
|
30
|
+
@backend.set('junk', 'something')
|
31
|
+
@backend.get('junk').should be_nil
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), %w[.. .. spec_helper])
|
2
|
+
|
3
|
+
describe Feedzirra::Backend::Filesystem do
|
4
|
+
before do
|
5
|
+
@backend = Feedzirra::Backend::Filesystem.new({:path => '/tmp'})
|
6
|
+
end
|
7
|
+
|
8
|
+
it_should_behave_like "all backends"
|
9
|
+
|
10
|
+
it "should accept a Hash of options for inialization" do
|
11
|
+
Feedzirra::Backend::Filesystem.new({:path => '/tmp'})
|
12
|
+
end
|
13
|
+
|
14
|
+
describe "#filename_for" do
|
15
|
+
it "should default to the users' home path plus the MD5 of the normalized URL" do
|
16
|
+
MD5.expects(:hexdigest).returns('bah')
|
17
|
+
uri = mock('uri')
|
18
|
+
uri.expects(:normalize).returns('foo')
|
19
|
+
URI.expects(:parse).returns(uri)
|
20
|
+
Feedzirra::Backend::Filesystem.new({:path => '/tmp'}).__send__(:filename_for, 'hey').should == '/tmp/bah'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), %w[.. .. spec_helper])
|
2
|
+
|
3
|
+
describe Feedzirra::Backend::Memcache do
|
4
|
+
before do
|
5
|
+
@backend = Feedzirra::Backend::Memcache.new({:server => 'localhost', :port => 11211})
|
6
|
+
@cache = mock('cache')
|
7
|
+
@backend.instance_variable_set(:@cache, @cache)
|
8
|
+
end
|
9
|
+
|
10
|
+
it_should_behave_like "all backends"
|
11
|
+
|
12
|
+
describe "#get" do
|
13
|
+
it "should call #get on the cache" do
|
14
|
+
@cache.expects(:get)
|
15
|
+
@backend.get('foo')
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "#set" do
|
20
|
+
it "should call #set on the cache" do
|
21
|
+
@cache.expects(:set)
|
22
|
+
@backend.set('foo', 'hey')
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), %w[.. .. spec_helper])
|
2
|
+
|
3
|
+
describe Feedzirra::Backend::Memory do
|
4
|
+
before do
|
5
|
+
@backend = Feedzirra::Backend::Memory.new
|
6
|
+
end
|
7
|
+
|
8
|
+
it_should_behave_like "all backends"
|
9
|
+
|
10
|
+
it "should initialize properly" do
|
11
|
+
Feedzirra::Backend::Memory.new
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jsl-feedzirra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.12.
|
4
|
+
version: 0.0.12.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Paul Dix
|
@@ -111,6 +111,7 @@ files:
|
|
111
111
|
- lib/feedzirra/parser/feed_utilities.rb
|
112
112
|
- lib/feedzirra/parser/feed_entry_utilities.rb
|
113
113
|
- lib/feedzirra/backend/filesystem.rb
|
114
|
+
- lib/feedzirra/backend/dev_null.rb
|
114
115
|
- lib/feedzirra/backend/memcache.rb
|
115
116
|
- lib/feedzirra/backend/memory.rb
|
116
117
|
- README.rdoc
|
@@ -129,6 +130,10 @@ files:
|
|
129
130
|
- spec/feedzirra/parser/rss_entry_spec.rb
|
130
131
|
- spec/feedzirra/feed_utilities_spec.rb
|
131
132
|
- spec/feedzirra/feed_entry_utilities_spec.rb
|
133
|
+
- spec/feedzirra/backend/dev_null_spec.rb
|
134
|
+
- spec/feedzirra/backend/filesystem_spec.rb
|
135
|
+
- spec/feedzirra/backend/memcache_spec.rb
|
136
|
+
- spec/feedzirra/backend/memory_spec.rb
|
132
137
|
has_rdoc: true
|
133
138
|
homepage: http://github.com/pauldix/feedzirra
|
134
139
|
post_install_message:
|