cache_method 0.1.2 → 0.1.3
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/cache_method.gemspec +1 -1
- data/lib/cache_method/config.rb +5 -5
- data/lib/cache_method/version.rb +1 -1
- data/test/test_cache_method.rb +22 -0
- metadata +8 -6
data/cache_method.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
|
|
18
18
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
19
19
|
s.require_paths = ["lib"]
|
20
20
|
|
21
|
-
s.add_dependency 'cache'
|
21
|
+
s.add_dependency 'cache', '>=0.1.2'
|
22
22
|
s.add_development_dependency 'memcached'
|
23
23
|
# if RUBY_VERSION >= '1.9'
|
24
24
|
# s.add_development_dependency 'ruby-debug19'
|
data/lib/cache_method/config.rb
CHANGED
@@ -25,16 +25,16 @@ module CacheMethod
|
|
25
25
|
#
|
26
26
|
# Example:
|
27
27
|
# CacheMethod.config.storage = Memcached.new '127.0.0.1:11211'
|
28
|
-
def storage=(
|
29
|
-
if
|
30
|
-
@storage =
|
28
|
+
def storage=(raw_client_or_nil)
|
29
|
+
if raw_client_or_nil.is_a?(::Cache)
|
30
|
+
@storage = raw_client_or_nil
|
31
31
|
else
|
32
|
-
@storage = ::Cache.new
|
32
|
+
@storage = ::Cache.new raw_client_or_nil
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
36
|
def storage #:nodoc:
|
37
|
-
@storage
|
37
|
+
@storage ||= ::Cache.new
|
38
38
|
end
|
39
39
|
|
40
40
|
# TTL for method caches. Defaults to 24 hours or 86,400 seconds.
|
data/lib/cache_method/version.rb
CHANGED
data/test/test_cache_method.rb
CHANGED
@@ -196,4 +196,26 @@ class TestCacheMethod < Test::Unit::TestCase
|
|
196
196
|
assert_equal 'danke schoen', Blog2.get_latest_entries
|
197
197
|
assert_equal 2, Blog2.request_count
|
198
198
|
end
|
199
|
+
|
200
|
+
def test_never_set_storage
|
201
|
+
CacheMethod.config.instance_variable_set :@storage, nil
|
202
|
+
a = CopyCat1.new 'mimo'
|
203
|
+
|
204
|
+
assert_equal 'hi', a.echo('hi')
|
205
|
+
assert_equal 1, a.echo_count
|
206
|
+
|
207
|
+
assert_equal 'hi', a.echo('hi')
|
208
|
+
assert_equal 1, a.echo_count
|
209
|
+
end
|
210
|
+
|
211
|
+
def test_set_storage_to_nil
|
212
|
+
CacheMethod.config.storage = nil
|
213
|
+
a = CopyCat1.new 'mimo'
|
214
|
+
|
215
|
+
assert_equal 'hi', a.echo('hi')
|
216
|
+
assert_equal 1, a.echo_count
|
217
|
+
|
218
|
+
assert_equal 'hi', a.echo('hi')
|
219
|
+
assert_equal 1, a.echo_count
|
220
|
+
end
|
199
221
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cache_method
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 29
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 3
|
10
|
+
version: 0.1.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Seamus Abshere
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-02-
|
18
|
+
date: 2011-02-24 00:00:00 -06:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -26,10 +26,12 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
hash:
|
29
|
+
hash: 31
|
30
30
|
segments:
|
31
31
|
- 0
|
32
|
-
|
32
|
+
- 1
|
33
|
+
- 2
|
34
|
+
version: 0.1.2
|
33
35
|
type: :runtime
|
34
36
|
version_requirements: *id001
|
35
37
|
- !ruby/object:Gem::Dependency
|