Class: MemcacheMock

Inherits:
Object
  • Object
show all
Defined in:
lib/memcache_mock.rb,
lib/memcache_mock/version.rb

Constant Summary collapse

VERSION =
"0.0.9"

Instance Method Summary collapse

Constructor Details

#initializeMemcacheMock

Returns a new instance of MemcacheMock.



4
5
6
# File 'lib/memcache_mock.rb', line 4

def initialize( )
  @values = {}
end

Instance Method Details

#append(key, value) ⇒ Object



32
33
34
35
36
# File 'lib/memcache_mock.rb', line 32

def append( key, value )
  if @values[key]
    @values[key] += value
  end
end

#delete(key) ⇒ Object



38
39
40
# File 'lib/memcache_mock.rb', line 38

def delete(key)
  @values.delete(key)
end

#flushObject



42
43
44
# File 'lib/memcache_mock.rb', line 42

def flush
  @values.clear
end

#flush_allObject



46
47
48
# File 'lib/memcache_mock.rb', line 46

def flush_all
  flush
end

#get(key) ⇒ Object



16
17
18
# File 'lib/memcache_mock.rb', line 16

def get( key )
  @values.fetch(key, nil)
end

#get_multi(keys) ⇒ Object



20
21
22
# File 'lib/memcache_mock.rb', line 20

def get_multi( keys )
  @values.select { |k, v| keys.include?( k ) }
end

#incr(key, value, ttl, default_value) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/memcache_mock.rb', line 8

def incr( key, value, ttl, default_value )
  if @values[key]
    append( key, value )
  else
    @values[key] = default_value
  end
end

#set(key, value, ttl = nil, options = {}) ⇒ Object



24
25
26
# File 'lib/memcache_mock.rb', line 24

def set( key, value, ttl = nil, options = {} )
  @values[key] = value
end

#update(key, default, ttl = nil, options = nil) ⇒ Object



28
29
30
# File 'lib/memcache_mock.rb', line 28

def update( key, default, ttl = nil, options = nil )
  @values[key] = yield( @values.fetch(key, default ))
end