padrino-cache 0.16.1 → 0.17.0
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.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: debf35ad318b1406cca39e13b78606d3a6c907871c86f80f3597dd8f3e102f7b
|
|
4
|
+
data.tar.gz: 6d0348ce0bb9c75715968b52c45cbf0f3ddfba3ccfd6c46bfc5788efe8bcb47a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '08d3aff0107b8308cbef75f856c186210843d0338b0948376c859817b20961ec37dc86bba22f05a99012cb8d4f4fd8d907e8d34d6cfddd822c5d1a55e597e844'
|
|
7
|
+
data.tar.gz: 69227bd4456285c96c3074c0b55dd839a7ce4f22eeef12b5c8514606db18bc5a70710f41de316a419ec7ac786d8d80bca90f5c45eb10bd372430e15df4373c2f
|
|
@@ -7,11 +7,11 @@ module Padrino
|
|
|
7
7
|
began_at = Time.now
|
|
8
8
|
if settings.cache.key?(key.to_s)
|
|
9
9
|
value = settings.cache[key.to_s]
|
|
10
|
-
logger.
|
|
10
|
+
logger.bench 'GET Object', began_at, key.to_s if defined?(logger) && logger.respond_to?(:bench) && logger.debug?
|
|
11
11
|
else
|
|
12
12
|
value = yield
|
|
13
13
|
settings.cache.store(key.to_s, value, opts)
|
|
14
|
-
logger.
|
|
14
|
+
logger.bench 'SET Object', began_at, key.to_s if defined?(logger) && logger.respond_to?(:bench) && logger.debug?
|
|
15
15
|
end
|
|
16
16
|
value
|
|
17
17
|
else
|
|
@@ -53,12 +53,12 @@ module Padrino
|
|
|
53
53
|
began_at = Time.now
|
|
54
54
|
if settings.cache.key?(key.to_s)
|
|
55
55
|
value = settings.cache[key.to_s]
|
|
56
|
-
logger.
|
|
56
|
+
logger.bench 'GET Fragment', began_at, key.to_s if defined?(logger) && logger.respond_to?(:bench) && logger.debug?
|
|
57
57
|
concat_content(value.to_s.html_safe)
|
|
58
58
|
else
|
|
59
59
|
value = capture_html(&block)
|
|
60
60
|
settings.cache.store(key.to_s, value, opts)
|
|
61
|
-
logger.
|
|
61
|
+
logger.bench 'SET Fragment', began_at, key.to_s if defined?(logger) && logger.respond_to?(:bench) && logger.debug?
|
|
62
62
|
concat_content(value)
|
|
63
63
|
end
|
|
64
64
|
else
|
|
@@ -117,7 +117,7 @@ module Padrino
|
|
|
117
117
|
route_cache_key = resolve_cache_key || env['PATH_INFO']
|
|
118
118
|
|
|
119
119
|
value = settings.cache[route_cache_key]
|
|
120
|
-
logger.
|
|
120
|
+
logger.bench 'GET Cache', began_at, route_cache_key if defined?(logger) && logger.respond_to?(:bench) && logger.debug? && value
|
|
121
121
|
|
|
122
122
|
value
|
|
123
123
|
end
|
|
@@ -135,7 +135,7 @@ module Padrino
|
|
|
135
135
|
|
|
136
136
|
settings.cache.store(route_cache_key, content, expires: cache_expires)
|
|
137
137
|
|
|
138
|
-
logger.
|
|
138
|
+
logger.bench 'SET Cache', began_at, route_cache_key if defined?(logger) && logger.respond_to?(:bench) && logger.debug?
|
|
139
139
|
end
|
|
140
140
|
|
|
141
141
|
##
|
data/test/helper.rb
CHANGED
|
@@ -2,6 +2,11 @@ ENV['RACK_ENV'] = 'test'
|
|
|
2
2
|
PADRINO_ROOT = __dir__ unless defined?(PADRINO_ROOT)
|
|
3
3
|
|
|
4
4
|
require 'minitest/autorun'
|
|
5
|
+
begin
|
|
6
|
+
require 'minitest/mock'
|
|
7
|
+
rescue LoadError
|
|
8
|
+
# minitest/mock is built-in for older minitest versions
|
|
9
|
+
end
|
|
5
10
|
require 'minitest/pride'
|
|
6
11
|
require 'rack/test'
|
|
7
12
|
require 'padrino-cache'
|
data/test/test_padrino_cache.rb
CHANGED
|
@@ -22,6 +22,51 @@ describe 'PadrinoCache' do
|
|
|
22
22
|
refute_equal called, false
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
+
it 'should cache with a logger without Padrino::Logger::Extensions' do
|
|
26
|
+
log = StringIO.new
|
|
27
|
+
save_logger = Padrino.logger
|
|
28
|
+
Padrino.logger = Logger.new(log)
|
|
29
|
+
mock_app do
|
|
30
|
+
register Padrino::Cache
|
|
31
|
+
enable :caching
|
|
32
|
+
get('/foo') { cache(:test) { 'test fragment' } }
|
|
33
|
+
get('/bar', cache: true) { cache_object(:object) { 'test object' } }
|
|
34
|
+
end
|
|
35
|
+
2.times do
|
|
36
|
+
get '/foo'
|
|
37
|
+
assert_equal 200, status
|
|
38
|
+
assert_equal 'test fragment', body
|
|
39
|
+
get '/bar'
|
|
40
|
+
assert_equal 200, status
|
|
41
|
+
assert_equal 'test object', body
|
|
42
|
+
end
|
|
43
|
+
['SET FRAGMENT', 'GET FRAGMENT', 'SET OBJECT', 'SET CACHE', 'GET CACHE'].each do |action|
|
|
44
|
+
assert_match(/#{action} \(\d+\.\d+s\)/, log.string)
|
|
45
|
+
end
|
|
46
|
+
ensure
|
|
47
|
+
Padrino.logger = save_logger
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
it 'should cache with a logger that lacks bench' do
|
|
51
|
+
log = StringIO.new
|
|
52
|
+
mock_app do
|
|
53
|
+
register Padrino::Cache
|
|
54
|
+
enable :caching
|
|
55
|
+
helpers { define_method(:logger) { @logger ||= Logger.new(log).freeze } }
|
|
56
|
+
get('/foo') { cache(:test) { 'test fragment' } }
|
|
57
|
+
get('/bar', cache: true) { cache_object(:object) { 'test object' } }
|
|
58
|
+
get('/baz') { cache_object(:uncached_page) { 'object only' } }
|
|
59
|
+
end
|
|
60
|
+
2.times do
|
|
61
|
+
get '/foo'
|
|
62
|
+
assert_equal 'test fragment', body
|
|
63
|
+
get '/bar'
|
|
64
|
+
assert_equal 'test object', body
|
|
65
|
+
get '/baz'
|
|
66
|
+
assert_equal 'object only', body
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
25
70
|
it 'should cache a page' do
|
|
26
71
|
called = false
|
|
27
72
|
mock_app do
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: padrino-cache
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.17.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Padrino Team
|
|
@@ -11,7 +11,7 @@ authors:
|
|
|
11
11
|
autorequire:
|
|
12
12
|
bindir: bin
|
|
13
13
|
cert_chain: []
|
|
14
|
-
date: 2026-
|
|
14
|
+
date: 2026-10-14 00:00:00.000000000 Z
|
|
15
15
|
dependencies:
|
|
16
16
|
- !ruby/object:Gem::Dependency
|
|
17
17
|
name: padrino-core
|
|
@@ -19,28 +19,28 @@ dependencies:
|
|
|
19
19
|
requirements:
|
|
20
20
|
- - '='
|
|
21
21
|
- !ruby/object:Gem::Version
|
|
22
|
-
version: 0.
|
|
22
|
+
version: 0.17.0
|
|
23
23
|
type: :runtime
|
|
24
24
|
prerelease: false
|
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
26
|
requirements:
|
|
27
27
|
- - '='
|
|
28
28
|
- !ruby/object:Gem::Version
|
|
29
|
-
version: 0.
|
|
29
|
+
version: 0.17.0
|
|
30
30
|
- !ruby/object:Gem::Dependency
|
|
31
31
|
name: padrino-helpers
|
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
|
33
33
|
requirements:
|
|
34
34
|
- - '='
|
|
35
35
|
- !ruby/object:Gem::Version
|
|
36
|
-
version: 0.
|
|
36
|
+
version: 0.17.0
|
|
37
37
|
type: :runtime
|
|
38
38
|
prerelease: false
|
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
|
40
40
|
requirements:
|
|
41
41
|
- - '='
|
|
42
42
|
- !ruby/object:Gem::Version
|
|
43
|
-
version: 0.
|
|
43
|
+
version: 0.17.0
|
|
44
44
|
- !ruby/object:Gem::Dependency
|
|
45
45
|
name: moneta
|
|
46
46
|
requirement: !ruby/object:Gem::Requirement
|