padrino-cache 0.10.1 → 0.10.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +2 -0
- data/lib/padrino-cache/helpers/cache_store.rb +2 -2
- data/lib/padrino-cache/helpers/fragment.rb +1 -1
- data/lib/padrino-cache/helpers/page.rb +2 -2
- data/lib/padrino-cache/store/file.rb +1 -1
- data/lib/padrino-cache/store/memcache.rb +1 -1
- data/lib/padrino-cache/store/memory.rb +1 -1
- data/lib/padrino-cache/store/redis.rb +1 -1
- data/lib/padrino-cache.rb +1 -1
- data/padrino-cache.gemspec +1 -1
- data/test/test_padrino_cache.rb +1 -1
- data/test/test_stores.rb +23 -18
- metadata +21 -3
data/README.rdoc
CHANGED
@@ -255,6 +255,7 @@ You can set a global caching option or a per app caching options.
|
|
255
255
|
|
256
256
|
Padrino.cache = Padrino::Cache::Store::Memcache.new(::Memcached.new('127.0.0.1:11211', :exception_retry_limit => 1))
|
257
257
|
Padrino.cache = Padrino::Cache::Store::Memcache.new(::Dalli::Client.new('127.0.0.1:11211', :exception_retry_limit => 1))
|
258
|
+
Padrino.cache = Padrino::Cache::Store::Mongo.new(::Mongo::Connection.new(...)
|
258
259
|
Padrino.cache = Padrino::Cache::Store::Redis.new(::Redis.new(:host => '127.0.0.1', :port => 6379, :db => 0))
|
259
260
|
Padrino.cache = Padrino::Cache::Store::Memory.new(50)
|
260
261
|
Padrino.cache = Padrino::Cache::Store::File.new(/my/cache/path)
|
@@ -271,6 +272,7 @@ You can manage your cache from anywhere in your app:
|
|
271
272
|
set :cache, Padrino::Cache::Store::Memcache.new(::Memcached.new('127.0.0.1:11211', :exception_retry_limit => 1))
|
272
273
|
set :cache, Padrino::Cache::Store::Memcache.new(::Dalli::Client.new('127.0.0.1:11211', :exception_retry_limit => 1))
|
273
274
|
set :cache, Padrino::Cache::Store::Redis.new(::Redis.new(:host => '127.0.0.1', :port => 6379, :db => 0))
|
275
|
+
set :cache, Padrino::Cache::Store::Mongo.new(::Mongo::Connection.new(...))
|
274
276
|
set :cache, Padrino::Cache::Store::Memory.new(50)
|
275
277
|
set :cache, Padrino::Cache::Store::File.new(Padrino.root('tmp', app_name, 'cache') # default choice
|
276
278
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module Padrino
|
2
2
|
module Cache
|
3
3
|
module Helpers
|
4
|
-
module CacheStore
|
4
|
+
module CacheStore # @private
|
5
5
|
def expire(*key)
|
6
6
|
if key.size == 1 and key.first.is_a?(String)
|
7
7
|
settings.cache.delete(key)
|
@@ -12,4 +12,4 @@ module Padrino
|
|
12
12
|
end # CacheStore
|
13
13
|
end # Helpers
|
14
14
|
end # Cache
|
15
|
-
end # Padrino
|
15
|
+
end # Padrino
|
@@ -54,7 +54,7 @@ module Padrino
|
|
54
54
|
@_cache_key = name
|
55
55
|
end
|
56
56
|
|
57
|
-
def self.padrino_route_added(route, verb, path, args, options, block)
|
57
|
+
def self.padrino_route_added(route, verb, path, args, options, block) # @private
|
58
58
|
if route.cache and %w(GET HEAD).include?(verb)
|
59
59
|
route.add_before_filter(Proc.new {
|
60
60
|
if settings.caching?
|
@@ -83,4 +83,4 @@ module Padrino
|
|
83
83
|
end # Page
|
84
84
|
end # Helpers
|
85
85
|
end # Cache
|
86
|
-
end # Padrino
|
86
|
+
end # Padrino
|
data/lib/padrino-cache.rb
CHANGED
@@ -90,7 +90,7 @@ module Padrino
|
|
90
90
|
end
|
91
91
|
alias :included :registered
|
92
92
|
|
93
|
-
def padrino_route_added(route, verb, path, args, options, block)
|
93
|
+
def padrino_route_added(route, verb, path, args, options, block) # @private
|
94
94
|
Padrino::Cache::Helpers::Page.padrino_route_added(route, verb, path, args, options, block)
|
95
95
|
end
|
96
96
|
end
|
data/padrino-cache.gemspec
CHANGED
data/test/test_padrino_cache.rb
CHANGED
data/test/test_stores.rb
CHANGED
@@ -5,37 +5,37 @@ class Foo
|
|
5
5
|
end
|
6
6
|
|
7
7
|
COMMON_TESTS = <<-HERE_DOC
|
8
|
+
should "return nil trying to get a value that doesn't exist" do
|
9
|
+
assert_equal nil, Padrino.cache.get(@test_key)
|
10
|
+
end
|
11
|
+
|
8
12
|
should 'set and get an object' do
|
9
|
-
Padrino.cache.set(
|
10
|
-
assert_equal "bar", Padrino.cache.get(
|
13
|
+
Padrino.cache.set(@test_key, Foo.new)
|
14
|
+
assert_equal "bar", Padrino.cache.get(@test_key).bar
|
11
15
|
end
|
12
16
|
|
13
17
|
should 'set and get a nil value' do
|
14
|
-
Padrino.cache.set(
|
15
|
-
assert_equal nil, Padrino.cache.get(
|
18
|
+
Padrino.cache.set(@test_key, nil)
|
19
|
+
assert_equal nil, Padrino.cache.get(@test_key)
|
16
20
|
end
|
17
21
|
|
18
22
|
should 'set and get a raw value' do
|
19
|
-
Padrino.cache.set(
|
20
|
-
assert_equal 'foo', Padrino.cache.get(
|
21
|
-
end
|
22
|
-
|
23
|
-
should "return nil trying to get a value that doesn't exist" do
|
24
|
-
assert_equal nil, Padrino.cache.get('test')
|
23
|
+
Padrino.cache.set(@test_key, 'foo')
|
24
|
+
assert_equal 'foo', Padrino.cache.get(@test_key)
|
25
25
|
end
|
26
26
|
|
27
27
|
should "set a value that expires" do
|
28
|
-
Padrino.cache.set(
|
29
|
-
assert_equal 'test', Padrino.cache.get(
|
28
|
+
Padrino.cache.set(@test_key, 'test', :expires_in => 1)
|
29
|
+
# assert_equal 'test', Padrino.cache.get(@test_key) # Fails on race condition
|
30
30
|
sleep 2
|
31
|
-
assert_equal nil, Padrino.cache.get(
|
31
|
+
assert_equal nil, Padrino.cache.get(@test_key)
|
32
32
|
end
|
33
33
|
|
34
34
|
should 'delete a value' do
|
35
|
-
Padrino.cache.set(
|
36
|
-
assert_equal 'test', Padrino.cache.get(
|
37
|
-
Padrino.cache.delete(
|
38
|
-
assert_equal nil, Padrino.cache.get(
|
35
|
+
Padrino.cache.set(@test_key, 'test')
|
36
|
+
assert_equal 'test', Padrino.cache.get(@test_key)
|
37
|
+
Padrino.cache.delete(@test_key)
|
38
|
+
assert_equal nil, Padrino.cache.get(@test_key)
|
39
39
|
end
|
40
40
|
HERE_DOC
|
41
41
|
|
@@ -69,6 +69,7 @@ begin
|
|
69
69
|
def setup
|
70
70
|
Padrino.cache = Padrino::Cache::Store::Memcache.new(::Dalli::Client.new('127.0.0.1:11211', :exception_retry_limit => 1))
|
71
71
|
Padrino.cache.flush
|
72
|
+
@test_key = "val_#{Time.now.to_i}"
|
72
73
|
end
|
73
74
|
|
74
75
|
def teardown
|
@@ -78,7 +79,7 @@ begin
|
|
78
79
|
eval COMMON_TESTS
|
79
80
|
end
|
80
81
|
rescue LoadError
|
81
|
-
warn "Skipping
|
82
|
+
warn "Skipping memcache with dalli library tests"
|
82
83
|
end
|
83
84
|
|
84
85
|
begin
|
@@ -88,6 +89,7 @@ begin
|
|
88
89
|
def setup
|
89
90
|
Padrino.cache = Padrino::Cache::Store::Redis.new(::Redis.new(:host => '127.0.0.1', :port => 6379, :db => 0))
|
90
91
|
Padrino.cache.flush
|
92
|
+
@test_key = "val_#{Time.now.to_i}"
|
91
93
|
end
|
92
94
|
|
93
95
|
def teardown
|
@@ -107,6 +109,7 @@ begin
|
|
107
109
|
def setup
|
108
110
|
Padrino.cache = Padrino::Cache::Store::Mongo.new(::Mongo::Connection.new('127.0.0.1', 27017).db('padrino-cache_test'), {:size => 10, :collection => 'cache'})
|
109
111
|
Padrino.cache.flush
|
112
|
+
@test_key = "val_#{Time.now.to_i}"
|
110
113
|
end
|
111
114
|
|
112
115
|
def teardown
|
@@ -124,6 +127,7 @@ class TestFileStore < Test::Unit::TestCase
|
|
124
127
|
@apptmp = "#{Dir.tmpdir}/padrino-tests/#{UUID.new.generate}"
|
125
128
|
FileUtils.mkdir_p(@apptmp)
|
126
129
|
Padrino.cache = Padrino::Cache::Store::File.new(@apptmp)
|
130
|
+
@test_key = "val_#{Time.now.to_i}"
|
127
131
|
end
|
128
132
|
|
129
133
|
def teardown
|
@@ -136,6 +140,7 @@ end
|
|
136
140
|
class TestInMemoryStore < Test::Unit::TestCase
|
137
141
|
def setup
|
138
142
|
Padrino.cache = Padrino::Cache::Store::Memory.new(50)
|
143
|
+
@test_key = "val_#{Time.now.to_i}"
|
139
144
|
end
|
140
145
|
|
141
146
|
def teardown
|
metadata
CHANGED
@@ -1,8 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: padrino-cache
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 51
|
4
5
|
prerelease:
|
5
|
-
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 10
|
9
|
+
- 2
|
10
|
+
version: 0.10.2
|
6
11
|
platform: ruby
|
7
12
|
authors:
|
8
13
|
- Padrino Team
|
@@ -13,7 +18,7 @@ autorequire:
|
|
13
18
|
bindir: bin
|
14
19
|
cert_chain: []
|
15
20
|
|
16
|
-
date: 2011-08-
|
21
|
+
date: 2011-08-31 00:00:00 -07:00
|
17
22
|
default_executable:
|
18
23
|
dependencies:
|
19
24
|
- !ruby/object:Gem::Dependency
|
@@ -24,7 +29,12 @@ dependencies:
|
|
24
29
|
requirements:
|
25
30
|
- - "="
|
26
31
|
- !ruby/object:Gem::Version
|
27
|
-
|
32
|
+
hash: 51
|
33
|
+
segments:
|
34
|
+
- 0
|
35
|
+
- 10
|
36
|
+
- 2
|
37
|
+
version: 0.10.2
|
28
38
|
type: :runtime
|
29
39
|
version_requirements: *id001
|
30
40
|
description: Caching support for memcached, page and fragment
|
@@ -69,12 +79,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
69
79
|
requirements:
|
70
80
|
- - ">="
|
71
81
|
- !ruby/object:Gem::Version
|
82
|
+
hash: 3
|
83
|
+
segments:
|
84
|
+
- 0
|
72
85
|
version: "0"
|
73
86
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
74
87
|
none: false
|
75
88
|
requirements:
|
76
89
|
- - ">="
|
77
90
|
- !ruby/object:Gem::Version
|
91
|
+
hash: 23
|
92
|
+
segments:
|
93
|
+
- 1
|
94
|
+
- 3
|
95
|
+
- 6
|
78
96
|
version: 1.3.6
|
79
97
|
requirements: []
|
80
98
|
|