moneta 0.7.1 → 0.7.2

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.
Files changed (71) hide show
  1. data/.yardopts +1 -0
  2. data/CHANGES +21 -10
  3. data/README.md +1 -1
  4. data/SPEC.md +4 -12
  5. data/lib/moneta.rb +7 -5
  6. data/lib/moneta/adapters/activerecord.rb +9 -3
  7. data/lib/moneta/adapters/cassandra.rb +9 -4
  8. data/lib/moneta/adapters/client.rb +9 -3
  9. data/lib/moneta/adapters/cookie.rb +3 -0
  10. data/lib/moneta/adapters/couch.rb +8 -3
  11. data/lib/moneta/adapters/datamapper.rb +8 -3
  12. data/lib/moneta/adapters/dbm.rb +1 -2
  13. data/lib/moneta/adapters/file.rb +9 -4
  14. data/lib/moneta/adapters/fog.rb +8 -3
  15. data/lib/moneta/adapters/gdbm.rb +1 -2
  16. data/lib/moneta/adapters/hbase.rb +10 -3
  17. data/lib/moneta/adapters/leveldb.rb +3 -2
  18. data/lib/moneta/adapters/localmemcache.rb +4 -4
  19. data/lib/moneta/adapters/lruhash.rb +8 -4
  20. data/lib/moneta/adapters/memcached/dalli.rb +10 -4
  21. data/lib/moneta/adapters/memcached/native.rb +9 -4
  22. data/lib/moneta/adapters/memory.rb +8 -3
  23. data/lib/moneta/adapters/mongo.rb +7 -3
  24. data/lib/moneta/adapters/null.rb +8 -1
  25. data/lib/moneta/adapters/pstore.rb +9 -3
  26. data/lib/moneta/adapters/redis.rb +10 -4
  27. data/lib/moneta/adapters/riak.rb +12 -7
  28. data/lib/moneta/adapters/sdbm.rb +1 -2
  29. data/lib/moneta/adapters/sequel.rb +9 -3
  30. data/lib/moneta/adapters/sqlite.rb +10 -4
  31. data/lib/moneta/adapters/tokyocabinet.rb +2 -2
  32. data/lib/moneta/builder.rb +11 -7
  33. data/lib/moneta/cache.rb +16 -6
  34. data/lib/moneta/expires.rb +12 -6
  35. data/lib/moneta/lock.rb +0 -2
  36. data/lib/moneta/logger.rb +0 -2
  37. data/lib/moneta/mixins.rb +175 -47
  38. data/lib/moneta/optionmerger.rb +2 -0
  39. data/lib/moneta/proxy.rb +14 -30
  40. data/lib/moneta/server.rb +0 -2
  41. data/lib/moneta/shared.rb +1 -3
  42. data/lib/moneta/stack.rb +20 -10
  43. data/lib/moneta/transformer.rb +84 -61
  44. data/lib/moneta/version.rb +1 -1
  45. data/lib/rack/moneta_rest.rb +56 -0
  46. data/moneta.gemspec +1 -1
  47. data/spec/active_support/cache_moneta_store_spec.rb +4 -4
  48. data/spec/generate.rb +216 -203
  49. data/spec/helper.rb +0 -6
  50. data/spec/moneta/adapter_cassandra_spec.rb +2 -2
  51. data/spec/moneta/adapter_datamapper_spec.rb +1 -1
  52. data/spec/moneta/adapter_lruhash_spec.rb +1 -1
  53. data/spec/moneta/adapter_memcached_dalli_spec.rb +2 -2
  54. data/spec/moneta/adapter_memcached_native_spec.rb +2 -2
  55. data/spec/moneta/adapter_memcached_spec.rb +2 -2
  56. data/spec/moneta/adapter_redis_spec.rb +2 -2
  57. data/spec/moneta/cache_file_memory_spec.rb +3 -3
  58. data/spec/moneta/expires_file_spec.rb +4 -4
  59. data/spec/moneta/expires_memory_spec.rb +2 -2
  60. data/spec/moneta/optionmerger_spec.rb +6 -6
  61. data/spec/moneta/shared_spec.rb +1 -1
  62. data/spec/moneta/simple_client_tcp_spec.rb +1 -1
  63. data/spec/moneta/transformer_key_marshal_spec.rb +109 -0
  64. data/spec/moneta/transformer_key_yaml_spec.rb +109 -0
  65. data/spec/moneta/transformer_marshal_spec.rb +109 -0
  66. data/spec/moneta/transformer_value_marshal_spec.rb +109 -0
  67. data/spec/moneta/transformer_value_yaml_spec.rb +109 -0
  68. data/spec/monetaspecs.rb +14460 -3956
  69. metadata +16 -6
  70. data/lib/moneta/base.rb +0 -98
  71. data/lib/moneta/net.rb +0 -22
data/spec/helper.rb CHANGED
@@ -41,12 +41,6 @@ class Value
41
41
  end
42
42
  end
43
43
 
44
- def safe_load_value(value)
45
- load_value(value)
46
- rescue Exception => ex
47
- value
48
- end
49
-
50
44
  def start_server(*args)
51
45
  server = Moneta::Server.new(*args)
52
46
  Thread.new { server.run }
@@ -17,7 +17,7 @@ describe_moneta "adapter_cassandra" do
17
17
  it_should_behave_like 'persist_stringkey_stringvalue'
18
18
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
19
19
  it_should_behave_like 'store_stringkey_stringvalue'
20
- it 'should support default expiration time' do
20
+ it 'supports default expiration time' do
21
21
  store = Moneta::Adapters::Cassandra.new(:expires => 2, :keyspace => 'adapter_cassandra')
22
22
  store.store('key1', 'val1')
23
23
  store.store('key2', 'val2', :expires => 60)
@@ -25,7 +25,7 @@ describe_moneta "adapter_cassandra" do
25
25
  sleep 1
26
26
  store.load('key1').should == 'val1'
27
27
  sleep 2
28
- store.load('key1').should == nil
28
+ store.load('key1').should be_nil
29
29
  store['key2'].should == 'val2'
30
30
  end
31
31
  end
@@ -43,7 +43,7 @@ describe_moneta "adapter_datamapper" do
43
43
  second['key'] = 'value2'
44
44
 
45
45
  first.delete('key').should == 'value'
46
- first.key?('key').should == false
46
+ first.key?('key').should be_false
47
47
  second['key'].should == 'value2'
48
48
  end
49
49
 
@@ -16,7 +16,7 @@ describe_moneta "adapter_lruhash" do
16
16
  it_should_behave_like 'null_stringkey_stringvalue'
17
17
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
18
18
  it_should_behave_like 'store_stringkey_stringvalue'
19
- it 'should delete oldest' do
19
+ it 'deletes oldest' do
20
20
  store = Moneta::Adapters::LRUHash.new(:max_size => 10)
21
21
  store[0] = 'y'
22
22
  (1..1000).each do |i|
@@ -17,7 +17,7 @@ describe_moneta "adapter_memcached_dalli" do
17
17
  it_should_behave_like 'persist_stringkey_stringvalue'
18
18
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
19
19
  it_should_behave_like 'store_stringkey_stringvalue'
20
- it 'should support default expiration time' do
20
+ it 'supports default expiration time' do
21
21
  store = Moneta::Adapters::MemcachedDalli.new(:expires => 2, :namespace => "adapter_memcached_dalli")
22
22
  store.store('key1', 'val1')
23
23
  store.store('key2', 'val2', :expires => 60)
@@ -25,7 +25,7 @@ describe_moneta "adapter_memcached_dalli" do
25
25
  sleep 1
26
26
  store.load('key1').should == 'val1'
27
27
  sleep 2
28
- store.load('key1').should == nil
28
+ store.load('key1').should be_nil
29
29
  store['key2'].should == 'val2'
30
30
  end
31
31
  end
@@ -17,7 +17,7 @@ describe_moneta "adapter_memcached_native" do
17
17
  it_should_behave_like 'persist_stringkey_stringvalue'
18
18
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
19
19
  it_should_behave_like 'store_stringkey_stringvalue'
20
- it 'should support default expiration time' do
20
+ it 'supports default expiration time' do
21
21
  store = Moneta::Adapters::MemcachedNative.new(:expires => 2, :namespace => "adapter_memcached_native")
22
22
  store.store('key1', 'val1')
23
23
  store.store('key2', 'val2', :expires => 60)
@@ -25,7 +25,7 @@ describe_moneta "adapter_memcached_native" do
25
25
  sleep 1
26
26
  store.load('key1').should == 'val1'
27
27
  sleep 2
28
- store.load('key1').should == nil
28
+ store.load('key1').should be_nil
29
29
  store['key2'].should == 'val2'
30
30
  end
31
31
 
@@ -17,7 +17,7 @@ describe_moneta "adapter_memcached" do
17
17
  it_should_behave_like 'persist_stringkey_stringvalue'
18
18
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
19
19
  it_should_behave_like 'store_stringkey_stringvalue'
20
- it 'should support default expiration time' do
20
+ it 'supports default expiration time' do
21
21
  store = Moneta::Adapters::Memcached.new(:expires => 2, :namespace => "adapter_memcached")
22
22
  store.store('key1', 'val1')
23
23
  store.store('key2', 'val2', :expires => 60)
@@ -25,7 +25,7 @@ describe_moneta "adapter_memcached" do
25
25
  sleep 1
26
26
  store.load('key1').should == 'val1'
27
27
  sleep 2
28
- store.load('key1').should == nil
28
+ store.load('key1').should be_nil
29
29
  store['key2'].should == 'val2'
30
30
  end
31
31
  end
@@ -17,7 +17,7 @@ describe_moneta "adapter_redis" do
17
17
  it_should_behave_like 'persist_stringkey_stringvalue'
18
18
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
19
19
  it_should_behave_like 'store_stringkey_stringvalue'
20
- it 'should support default expiration time' do
20
+ it 'supports default expiration time' do
21
21
  store = Moneta::Adapters::Redis.new(:expires => 2)
22
22
  store.store('key1', 'val1')
23
23
  store.store('key2', 'val2', :expires => 60)
@@ -25,7 +25,7 @@ describe_moneta "adapter_redis" do
25
25
  sleep 1
26
26
  store.load('key1').should == 'val1'
27
27
  sleep 2
28
- store.load('key1').should == nil
28
+ store.load('key1').should be_nil
29
29
  store['key2'].should == 'val2'
30
30
  end
31
31
  end
@@ -21,15 +21,15 @@ describe_moneta "cache_file_memory" do
21
21
  it_should_behave_like 'persist_stringkey_stringvalue'
22
22
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
23
23
  it_should_behave_like 'store_stringkey_stringvalue'
24
- it 'should store loaded values in cache' do
24
+ it 'stores loaded values in cache' do
25
25
  store.backend['foo'] = 'bar'
26
- store.cache['foo'].should == nil
26
+ store.cache['foo'].should be_nil
27
27
  store['foo'].should == 'bar'
28
28
  store.cache['foo'].should == 'bar'
29
29
  store.backend.delete('foo')
30
30
  store['foo'].should == 'bar'
31
31
  store.delete('foo')
32
- store['foo'].should == nil
32
+ store['foo'].should be_nil
33
33
  end
34
34
 
35
35
  end
@@ -44,15 +44,15 @@ describe_moneta "expires_file" do
44
44
  it_should_behave_like 'store_nilkey_stringvalue'
45
45
  it_should_behave_like 'store_integerkey_stringvalue'
46
46
  it_should_behave_like 'transform_value_with_expires'
47
- it 'should delete expired value in underlying file storage' do
47
+ it 'deletes expired value in underlying file storage' do
48
48
  store.store('foo', 'bar', :expires => 2)
49
49
  store['foo'].should == 'bar'
50
50
  sleep 1
51
51
  store['foo'].should == 'bar'
52
52
  sleep 2
53
- store['foo'].should == nil
54
- store.adapter['foo'].should == nil
55
- store.adapter.adapter['foo'].should == nil
53
+ store['foo'].should be_nil
54
+ store.adapter['foo'].should be_nil
55
+ store.adapter.adapter['foo'].should be_nil
56
56
  end
57
57
 
58
58
  end
@@ -107,7 +107,7 @@ describe_moneta "expires_memory" do
107
107
  it_should_behave_like 'store_integerkey_booleanvalue'
108
108
  it_should_behave_like 'store_integerkey_nilvalue'
109
109
  it_should_behave_like 'store_integerkey_integervalue'
110
- it 'should support default expiration time' do
110
+ it 'supports default expiration time' do
111
111
  store = Moneta.new(:Memory, :expires => 2)
112
112
  store.store('key1', 'val1')
113
113
  store.store('key2', 'val2', :expires => 60)
@@ -115,7 +115,7 @@ describe_moneta "expires_memory" do
115
115
  sleep 1
116
116
  store.load('key1').should == 'val1'
117
117
  sleep 2
118
- store.load('key1').should == nil
118
+ store.load('key1').should be_nil
119
119
  store['key2'].should == 'val2'
120
120
  end
121
121
  end
@@ -18,7 +18,7 @@ describe_moneta "optionmerger" do
18
18
  merger.should be_instance_of(Moneta::OptionMerger)
19
19
  end
20
20
 
21
- it 'should save default options' do
21
+ it 'saves default options' do
22
22
  options = {:optionname => :optionvalue}
23
23
  merger = store.with(options)
24
24
  Moneta::OptionMerger::METHODS.each do |method|
@@ -28,14 +28,14 @@ describe_moneta "optionmerger" do
28
28
 
29
29
  PREFIX = [['alpha', nil], ['beta', nil], ['alpha', 'beta']]
30
30
 
31
- it 'should merge options' do
31
+ it 'merges options' do
32
32
  merger = store.with(:opt1 => :val1, :opt2 => :val2).with(:opt2 => :overwrite, :opt3 => :val3)
33
33
  Moneta::OptionMerger::METHODS.each do |method|
34
34
  merger.default_options[method].should == {:opt1 => :val1, :opt2 => :overwrite, :opt3 => :val3}
35
35
  end
36
36
  end
37
37
 
38
- it 'should merge options only for some methods' do
38
+ it 'merges options only for some methods' do
39
39
  PREFIX.each do |(alpha,beta)|
40
40
  options = {:opt1 => :val1, :opt2 => :val2, :prefix => alpha}
41
41
  merger = store.with(options).with(:opt2 => :overwrite, :opt3 => :val3, :prefix => beta, :only => :clear)
@@ -53,7 +53,7 @@ describe_moneta "optionmerger" do
53
53
  end
54
54
  end
55
55
 
56
- it 'should merge options except for some methods' do
56
+ it 'merges options except for some methods' do
57
57
  PREFIX.each do |(alpha,beta)|
58
58
  options = {:opt1 => :val1, :opt2 => :val2, :prefix => alpha}
59
59
  merger = store.with(options).with(:opt2 => :overwrite, :opt3 => :val3, :except => :clear, :prefix => beta)
@@ -71,12 +71,12 @@ describe_moneta "optionmerger" do
71
71
  end
72
72
  end
73
73
 
74
- it 'should have method #raw' do
74
+ it 'has method #raw' do
75
75
  store.raw.default_options.should == {:store=>{:raw=>true},:load=>{:raw=>true},:delete=>{:raw=>true}}
76
76
  store.raw.should equal(store.raw.raw)
77
77
  end
78
78
 
79
- it 'should have method #prefix' do
79
+ it 'has method #prefix' do
80
80
  store.prefix('a').default_options.should == {:store=>{:prefix=>'a'},:load=>{:prefix=>'a'},
81
81
  :delete=>{:prefix=>'a'},:key? => {:prefix=>'a'},:increment=>{:prefix=>'a'}}
82
82
 
@@ -20,7 +20,7 @@ describe_moneta "shared" do
20
20
  it_should_behave_like 'null_stringkey_stringvalue'
21
21
  it_should_behave_like 'returndifferent_stringkey_stringvalue'
22
22
  it_should_behave_like 'store_stringkey_stringvalue'
23
- it 'should share values' do
23
+ it 'shares values' do
24
24
  store['shared_key'] = 'shared_value'
25
25
  second = new_store
26
26
  second.key?('shared_key').should be_true
@@ -142,7 +142,7 @@ describe_moneta "simple_client_tcp" do
142
142
  it_should_behave_like 'store_integerkey_nilvalue'
143
143
  it_should_behave_like 'store_integerkey_integervalue'
144
144
  it_should_behave_like 'transform_value'
145
- it 'should support multiple clients' do
145
+ it 'supports multiple clients' do
146
146
  client = Moneta.new(:Client)
147
147
  client['shared_key'] = 'shared_val'
148
148
  (1..100).each do |i|
@@ -0,0 +1,109 @@
1
+ # Generated by generate.rb
2
+ require 'helper'
3
+
4
+ describe_moneta "transformer_key_marshal" do
5
+ def new_store
6
+ Moneta.build do
7
+ use :Transformer, :key => :marshal
8
+ adapter :Memory
9
+ end
10
+ end
11
+
12
+ def load_value(value)
13
+ value
14
+ end
15
+
16
+ include_context 'setup_store'
17
+ it_should_behave_like 'increment'
18
+ it_should_behave_like 'null_objectkey_objectvalue'
19
+ it_should_behave_like 'null_objectkey_stringvalue'
20
+ it_should_behave_like 'null_objectkey_hashvalue'
21
+ it_should_behave_like 'null_objectkey_booleanvalue'
22
+ it_should_behave_like 'null_objectkey_nilvalue'
23
+ it_should_behave_like 'null_objectkey_integervalue'
24
+ it_should_behave_like 'null_stringkey_objectvalue'
25
+ it_should_behave_like 'null_stringkey_stringvalue'
26
+ it_should_behave_like 'null_stringkey_hashvalue'
27
+ it_should_behave_like 'null_stringkey_booleanvalue'
28
+ it_should_behave_like 'null_stringkey_nilvalue'
29
+ it_should_behave_like 'null_stringkey_integervalue'
30
+ it_should_behave_like 'null_hashkey_objectvalue'
31
+ it_should_behave_like 'null_hashkey_stringvalue'
32
+ it_should_behave_like 'null_hashkey_hashvalue'
33
+ it_should_behave_like 'null_hashkey_booleanvalue'
34
+ it_should_behave_like 'null_hashkey_nilvalue'
35
+ it_should_behave_like 'null_hashkey_integervalue'
36
+ it_should_behave_like 'null_booleankey_objectvalue'
37
+ it_should_behave_like 'null_booleankey_stringvalue'
38
+ it_should_behave_like 'null_booleankey_hashvalue'
39
+ it_should_behave_like 'null_booleankey_booleanvalue'
40
+ it_should_behave_like 'null_booleankey_nilvalue'
41
+ it_should_behave_like 'null_booleankey_integervalue'
42
+ it_should_behave_like 'null_nilkey_objectvalue'
43
+ it_should_behave_like 'null_nilkey_stringvalue'
44
+ it_should_behave_like 'null_nilkey_hashvalue'
45
+ it_should_behave_like 'null_nilkey_booleanvalue'
46
+ it_should_behave_like 'null_nilkey_nilvalue'
47
+ it_should_behave_like 'null_nilkey_integervalue'
48
+ it_should_behave_like 'null_integerkey_objectvalue'
49
+ it_should_behave_like 'null_integerkey_stringvalue'
50
+ it_should_behave_like 'null_integerkey_hashvalue'
51
+ it_should_behave_like 'null_integerkey_booleanvalue'
52
+ it_should_behave_like 'null_integerkey_nilvalue'
53
+ it_should_behave_like 'null_integerkey_integervalue'
54
+ it_should_behave_like 'returndifferent_objectkey_objectvalue'
55
+ it_should_behave_like 'returndifferent_objectkey_stringvalue'
56
+ it_should_behave_like 'returndifferent_objectkey_hashvalue'
57
+ it_should_behave_like 'returndifferent_stringkey_objectvalue'
58
+ it_should_behave_like 'returndifferent_stringkey_stringvalue'
59
+ it_should_behave_like 'returndifferent_stringkey_hashvalue'
60
+ it_should_behave_like 'returndifferent_hashkey_objectvalue'
61
+ it_should_behave_like 'returndifferent_hashkey_stringvalue'
62
+ it_should_behave_like 'returndifferent_hashkey_hashvalue'
63
+ it_should_behave_like 'returndifferent_booleankey_objectvalue'
64
+ it_should_behave_like 'returndifferent_booleankey_stringvalue'
65
+ it_should_behave_like 'returndifferent_booleankey_hashvalue'
66
+ it_should_behave_like 'returndifferent_nilkey_objectvalue'
67
+ it_should_behave_like 'returndifferent_nilkey_stringvalue'
68
+ it_should_behave_like 'returndifferent_nilkey_hashvalue'
69
+ it_should_behave_like 'returndifferent_integerkey_objectvalue'
70
+ it_should_behave_like 'returndifferent_integerkey_stringvalue'
71
+ it_should_behave_like 'returndifferent_integerkey_hashvalue'
72
+ it_should_behave_like 'store_objectkey_objectvalue'
73
+ it_should_behave_like 'store_objectkey_stringvalue'
74
+ it_should_behave_like 'store_objectkey_hashvalue'
75
+ it_should_behave_like 'store_objectkey_booleanvalue'
76
+ it_should_behave_like 'store_objectkey_nilvalue'
77
+ it_should_behave_like 'store_objectkey_integervalue'
78
+ it_should_behave_like 'store_stringkey_objectvalue'
79
+ it_should_behave_like 'store_stringkey_stringvalue'
80
+ it_should_behave_like 'store_stringkey_hashvalue'
81
+ it_should_behave_like 'store_stringkey_booleanvalue'
82
+ it_should_behave_like 'store_stringkey_nilvalue'
83
+ it_should_behave_like 'store_stringkey_integervalue'
84
+ it_should_behave_like 'store_hashkey_objectvalue'
85
+ it_should_behave_like 'store_hashkey_stringvalue'
86
+ it_should_behave_like 'store_hashkey_hashvalue'
87
+ it_should_behave_like 'store_hashkey_booleanvalue'
88
+ it_should_behave_like 'store_hashkey_nilvalue'
89
+ it_should_behave_like 'store_hashkey_integervalue'
90
+ it_should_behave_like 'store_booleankey_objectvalue'
91
+ it_should_behave_like 'store_booleankey_stringvalue'
92
+ it_should_behave_like 'store_booleankey_hashvalue'
93
+ it_should_behave_like 'store_booleankey_booleanvalue'
94
+ it_should_behave_like 'store_booleankey_nilvalue'
95
+ it_should_behave_like 'store_booleankey_integervalue'
96
+ it_should_behave_like 'store_nilkey_objectvalue'
97
+ it_should_behave_like 'store_nilkey_stringvalue'
98
+ it_should_behave_like 'store_nilkey_hashvalue'
99
+ it_should_behave_like 'store_nilkey_booleanvalue'
100
+ it_should_behave_like 'store_nilkey_nilvalue'
101
+ it_should_behave_like 'store_nilkey_integervalue'
102
+ it_should_behave_like 'store_integerkey_objectvalue'
103
+ it_should_behave_like 'store_integerkey_stringvalue'
104
+ it_should_behave_like 'store_integerkey_hashvalue'
105
+ it_should_behave_like 'store_integerkey_booleanvalue'
106
+ it_should_behave_like 'store_integerkey_nilvalue'
107
+ it_should_behave_like 'store_integerkey_integervalue'
108
+ it_should_behave_like 'transform_value'
109
+ end
@@ -0,0 +1,109 @@
1
+ # Generated by generate.rb
2
+ require 'helper'
3
+
4
+ describe_moneta "transformer_key_yaml" do
5
+ def new_store
6
+ Moneta.build do
7
+ use :Transformer, :key => :yaml
8
+ adapter :Memory
9
+ end
10
+ end
11
+
12
+ def load_value(value)
13
+ value
14
+ end
15
+
16
+ include_context 'setup_store'
17
+ it_should_behave_like 'increment'
18
+ it_should_behave_like 'null_objectkey_objectvalue'
19
+ it_should_behave_like 'null_objectkey_stringvalue'
20
+ it_should_behave_like 'null_objectkey_hashvalue'
21
+ it_should_behave_like 'null_objectkey_booleanvalue'
22
+ it_should_behave_like 'null_objectkey_nilvalue'
23
+ it_should_behave_like 'null_objectkey_integervalue'
24
+ it_should_behave_like 'null_stringkey_objectvalue'
25
+ it_should_behave_like 'null_stringkey_stringvalue'
26
+ it_should_behave_like 'null_stringkey_hashvalue'
27
+ it_should_behave_like 'null_stringkey_booleanvalue'
28
+ it_should_behave_like 'null_stringkey_nilvalue'
29
+ it_should_behave_like 'null_stringkey_integervalue'
30
+ it_should_behave_like 'null_hashkey_objectvalue'
31
+ it_should_behave_like 'null_hashkey_stringvalue'
32
+ it_should_behave_like 'null_hashkey_hashvalue'
33
+ it_should_behave_like 'null_hashkey_booleanvalue'
34
+ it_should_behave_like 'null_hashkey_nilvalue'
35
+ it_should_behave_like 'null_hashkey_integervalue'
36
+ it_should_behave_like 'null_booleankey_objectvalue'
37
+ it_should_behave_like 'null_booleankey_stringvalue'
38
+ it_should_behave_like 'null_booleankey_hashvalue'
39
+ it_should_behave_like 'null_booleankey_booleanvalue'
40
+ it_should_behave_like 'null_booleankey_nilvalue'
41
+ it_should_behave_like 'null_booleankey_integervalue'
42
+ it_should_behave_like 'null_nilkey_objectvalue'
43
+ it_should_behave_like 'null_nilkey_stringvalue'
44
+ it_should_behave_like 'null_nilkey_hashvalue'
45
+ it_should_behave_like 'null_nilkey_booleanvalue'
46
+ it_should_behave_like 'null_nilkey_nilvalue'
47
+ it_should_behave_like 'null_nilkey_integervalue'
48
+ it_should_behave_like 'null_integerkey_objectvalue'
49
+ it_should_behave_like 'null_integerkey_stringvalue'
50
+ it_should_behave_like 'null_integerkey_hashvalue'
51
+ it_should_behave_like 'null_integerkey_booleanvalue'
52
+ it_should_behave_like 'null_integerkey_nilvalue'
53
+ it_should_behave_like 'null_integerkey_integervalue'
54
+ it_should_behave_like 'returndifferent_objectkey_objectvalue'
55
+ it_should_behave_like 'returndifferent_objectkey_stringvalue'
56
+ it_should_behave_like 'returndifferent_objectkey_hashvalue'
57
+ it_should_behave_like 'returndifferent_stringkey_objectvalue'
58
+ it_should_behave_like 'returndifferent_stringkey_stringvalue'
59
+ it_should_behave_like 'returndifferent_stringkey_hashvalue'
60
+ it_should_behave_like 'returndifferent_hashkey_objectvalue'
61
+ it_should_behave_like 'returndifferent_hashkey_stringvalue'
62
+ it_should_behave_like 'returndifferent_hashkey_hashvalue'
63
+ it_should_behave_like 'returndifferent_booleankey_objectvalue'
64
+ it_should_behave_like 'returndifferent_booleankey_stringvalue'
65
+ it_should_behave_like 'returndifferent_booleankey_hashvalue'
66
+ it_should_behave_like 'returndifferent_nilkey_objectvalue'
67
+ it_should_behave_like 'returndifferent_nilkey_stringvalue'
68
+ it_should_behave_like 'returndifferent_nilkey_hashvalue'
69
+ it_should_behave_like 'returndifferent_integerkey_objectvalue'
70
+ it_should_behave_like 'returndifferent_integerkey_stringvalue'
71
+ it_should_behave_like 'returndifferent_integerkey_hashvalue'
72
+ it_should_behave_like 'store_objectkey_objectvalue'
73
+ it_should_behave_like 'store_objectkey_stringvalue'
74
+ it_should_behave_like 'store_objectkey_hashvalue'
75
+ it_should_behave_like 'store_objectkey_booleanvalue'
76
+ it_should_behave_like 'store_objectkey_nilvalue'
77
+ it_should_behave_like 'store_objectkey_integervalue'
78
+ it_should_behave_like 'store_stringkey_objectvalue'
79
+ it_should_behave_like 'store_stringkey_stringvalue'
80
+ it_should_behave_like 'store_stringkey_hashvalue'
81
+ it_should_behave_like 'store_stringkey_booleanvalue'
82
+ it_should_behave_like 'store_stringkey_nilvalue'
83
+ it_should_behave_like 'store_stringkey_integervalue'
84
+ it_should_behave_like 'store_hashkey_objectvalue'
85
+ it_should_behave_like 'store_hashkey_stringvalue'
86
+ it_should_behave_like 'store_hashkey_hashvalue'
87
+ it_should_behave_like 'store_hashkey_booleanvalue'
88
+ it_should_behave_like 'store_hashkey_nilvalue'
89
+ it_should_behave_like 'store_hashkey_integervalue'
90
+ it_should_behave_like 'store_booleankey_objectvalue'
91
+ it_should_behave_like 'store_booleankey_stringvalue'
92
+ it_should_behave_like 'store_booleankey_hashvalue'
93
+ it_should_behave_like 'store_booleankey_booleanvalue'
94
+ it_should_behave_like 'store_booleankey_nilvalue'
95
+ it_should_behave_like 'store_booleankey_integervalue'
96
+ it_should_behave_like 'store_nilkey_objectvalue'
97
+ it_should_behave_like 'store_nilkey_stringvalue'
98
+ it_should_behave_like 'store_nilkey_hashvalue'
99
+ it_should_behave_like 'store_nilkey_booleanvalue'
100
+ it_should_behave_like 'store_nilkey_nilvalue'
101
+ it_should_behave_like 'store_nilkey_integervalue'
102
+ it_should_behave_like 'store_integerkey_objectvalue'
103
+ it_should_behave_like 'store_integerkey_stringvalue'
104
+ it_should_behave_like 'store_integerkey_hashvalue'
105
+ it_should_behave_like 'store_integerkey_booleanvalue'
106
+ it_should_behave_like 'store_integerkey_nilvalue'
107
+ it_should_behave_like 'store_integerkey_integervalue'
108
+ it_should_behave_like 'transform_value'
109
+ end