ninjudd-memcache-client 1.5.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,27 @@
1
+ require 'test/unit'
2
+ require File.dirname(__FILE__) + '/../lib/memcache_mock'
3
+ require File.dirname(__FILE__) + '/../lib/memcache_extended'
4
+
5
+ class TestGeniMemcache < Test::Unit::TestCase
6
+ # def memcache
7
+ # MemCache.new(
8
+ # :servers=>["localhost:11211"],
9
+ # :ttl=>1800,
10
+ # :compression=>false,
11
+ # :readonly=>false,
12
+ # :debug=>false,
13
+ # :c_threshold=>10000,
14
+ # :urlencode=>false
15
+ # )
16
+ # #CACHE.servers = memcached_config[:servers]
17
+ # end
18
+
19
+ def test_get_reset_expiry
20
+ m = MemCacheMock.new
21
+ m.add('rewrite_test', 'quick brown fox', 0.1)
22
+ assert_equal 'quick brown fox', m.get_reset_expiry('rewrite_test', 2)
23
+ sleep(0.1)
24
+
25
+ assert_equal 'quick brown fox', m.get('rewrite_test')
26
+ end
27
+ end
@@ -0,0 +1,94 @@
1
+ require 'test/unit'
2
+ require File.dirname(__FILE__) + '/../lib/memcache_mock'
3
+
4
+ class TestMemCacheMock < Test::Unit::TestCase
5
+ def test_get_set
6
+ m = MemCacheMock.new
7
+ m.set(2, [1,2,3])
8
+
9
+ assert_equal [1,2,3], m.get(2)
10
+ assert_equal [1,2,3], m.get('2')
11
+ end
12
+
13
+ def test_get_set_with_namespace
14
+ m = MemCacheMock.new
15
+ m.namespace = 'electric'
16
+ m.set(2, [1,2,3])
17
+
18
+ assert_equal [1,2,3], m.get(2)
19
+ assert_equal [1,2,3], m.get('2')
20
+
21
+ m.namespace = nil
22
+ assert_equal nil, m.get(2)
23
+ end
24
+
25
+ def test_multi_get
26
+ m = MemCacheMock.new
27
+ m.set(2, [1,2,3])
28
+ m.set(3, [4,5])
29
+
30
+ expected = { '2' => [1,2,3], '3' => [4,5] }
31
+ assert_equal expected, m.get_multi(2,3)
32
+ end
33
+
34
+ def test_multi_get_with_namespace
35
+ m = MemCacheMock.new
36
+ m.namespace = 'mania'
37
+ m.set(2, [1,2,3])
38
+ m.set(3, [4,5])
39
+
40
+ expected = { '2' => [1,2,3], '3' => [4,5] }
41
+ assert_equal expected, m.get_multi(2,3)
42
+
43
+ m.namespace = ''
44
+ assert_equal Hash.new, m.get_multi(2,3)
45
+ end
46
+
47
+ def test_delete
48
+ m = MemCacheMock.new
49
+ m.set(2, [1,2,3])
50
+
51
+ assert_equal [1,2,3], m.get(2)
52
+
53
+ m.delete(2)
54
+
55
+ assert_equal nil, m.get(2)
56
+ end
57
+
58
+ def test_clear
59
+ m = MemCacheMock.new
60
+ m.set(2, [1,2,3])
61
+
62
+ assert_equal [1,2,3], m.get(2)
63
+
64
+ m.clear
65
+
66
+ assert_equal nil, m.get(2)
67
+ end
68
+
69
+ def test_array_operators
70
+ m = MemCacheMock.new
71
+ m[2] = [1,2,3]
72
+
73
+ assert_equal [1,2,3], m[2]
74
+ end
75
+
76
+ def test_array_operators_with_namespace
77
+ m = MemCacheMock.new
78
+ m.namespace = 'fire'
79
+ m[2] = [1,2,3]
80
+
81
+ assert_equal [1,2,3], m[2]
82
+
83
+ m.namespace = 'water'
84
+ assert_equal nil, m[2]
85
+ end
86
+
87
+ def test_expiry
88
+ m = MemCacheMock.new
89
+ m.add('test', 1, 0.1)
90
+ assert_equal 1, m.get('test')
91
+ sleep(0.1)
92
+ assert_equal nil, m.get('test')
93
+ end
94
+ end
metadata ADDED
@@ -0,0 +1,66 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ninjudd-memcache-client
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.5.0.3
5
+ platform: ruby
6
+ authors:
7
+ - Eric Hodel
8
+ - Robert Cottrell
9
+ - Mike Perham
10
+ - Justin Balthrop
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+
15
+ date: 2008-06-25 00:00:00 -07:00
16
+ default_executable:
17
+ dependencies: []
18
+
19
+ description: A Ruby-based memcached client library (with extensions)
20
+ email: justin@geni.com
21
+ executables: []
22
+
23
+ extensions:
24
+ - ext/crc32/extconf.rb
25
+ extra_rdoc_files: []
26
+
27
+ files:
28
+ - README.txt
29
+ - License.txt
30
+ - History.txt
31
+ - Rakefile
32
+ - lib/memcache.rb
33
+ - lib/memcache_util.rb
34
+ - lib/memcache_extended.rb
35
+ - lib/memcache_mock.rb
36
+ - ext/crc32/crc32.c
37
+ has_rdoc: false
38
+ homepage: http://github.com/ninjudd/memcache-client
39
+ post_install_message:
40
+ rdoc_options: []
41
+
42
+ require_paths:
43
+ - lib
44
+ required_ruby_version: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: "0"
49
+ version:
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: "0"
55
+ version:
56
+ requirements: []
57
+
58
+ rubyforge_project:
59
+ rubygems_version: 1.2.0
60
+ signing_key:
61
+ specification_version: 2
62
+ summary: A Ruby-based memcached client library (with extensions)
63
+ test_files:
64
+ - test/test_mem_cache.rb
65
+ - test/test_memcache_extended.rb
66
+ - test/test_memcache_mock.rb