Skip to content

Commit eb6d010

Browse files
authored
Merge pull request #98 from miclast/fix_clean
Fixed clean method
2 parents 9f4d854 + 9e4f010 commit eb6d010

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

lib/zache.rb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,11 @@ def remove_by
177177

178178
# Remove keys that are expired.
179179
def clean
180-
synchronized { @hash.delete_if { |_key, value| expired?(value) } }
180+
synchronized { @hash.delete_if { |key, _value| expired?(key) } }
181+
end
182+
183+
def empty?
184+
@hash.empty?
181185
end
182186

183187
private

test/test_zache.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,14 @@ def test_clean
134134
assert(cache.exists?(:bye) == false)
135135
end
136136

137+
def test_clean_size
138+
cache = Zache.new
139+
cache.get(:hey, lifetime: 0.01) { Random.rand }
140+
sleep 0.1
141+
cache.clean
142+
assert(cache.empty?)
143+
end
144+
137145
def test_clean_with_sync_false
138146
cache = Zache.new(sync: false)
139147
cache.get(:hey) { Random.rand }

0 commit comments

Comments
 (0)