riakpb 0.1.6 → 0.2.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.
- data/README.rdoc +23 -23
- data/Rakefile +3 -3
- data/lib/riak/bucket.rb +23 -23
- data/lib/riak/client/rpc.rb +14 -12
- data/lib/riak/client.rb +59 -73
- data/lib/riak/client_pb.rb +1 -1
- data/lib/riak/{riak_content.rb → content.rb} +125 -70
- data/lib/riak/failed_exchange.rb +2 -2
- data/lib/riak/failed_request.rb +3 -3
- data/lib/riak/key.rb +38 -38
- data/lib/riak/locale/en.yml +3 -3
- data/lib/riak/map_reduce.rb +6 -6
- data/lib/riak/sibling_error.rb +3 -3
- data/lib/riak/util/decode.rb +1 -1
- data/lib/riak/util/encode.rb +2 -2
- data/lib/riak/util/message_code.rb +9 -9
- data/lib/riak/util/translation.rb +1 -1
- data/lib/riak.rb +3 -3
- data/load_stocks.rb +1 -1
- data/spec/riak/bucket_spec.rb +22 -22
- data/spec/riak/client_spec.rb +31 -31
- data/spec/riak/{riak_content_spec.rb → content_spec.rb} +17 -18
- data/spec/riak/key_spec.rb +16 -16
- data/spec/riak/map_reduce_spec.rb +30 -30
- data/spec/riak/rpc_spec.rb +2 -2
- metadata +9 -10
- data/riakpb.gemspec +0 -37
data/lib/riak/util/encode.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
require 'riak'
|
2
2
|
|
3
|
-
module
|
3
|
+
module Riakpb
|
4
4
|
module Util
|
5
5
|
|
6
6
|
module Encode
|
7
7
|
|
8
|
-
# Construct a Request Message for
|
8
|
+
# Construct a Request Message for Riakpb, which adheres to the following structure:
|
9
9
|
#
|
10
10
|
# 00 00 00 07 09 0A 01 62 12 01 6B
|
11
11
|
# |----Len---|MC|----Message-----|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
module
|
1
|
+
module Riakpb
|
2
2
|
module Util
|
3
3
|
module MessageCode
|
4
4
|
ERROR_RESPONSE = 0
|
@@ -56,17 +56,17 @@ module Riak
|
|
56
56
|
|
57
57
|
RESPONSE_CLASS_FOR = {
|
58
58
|
PING_REQUEST => nil,
|
59
|
-
GET_CLIENT_ID_REQUEST =>
|
59
|
+
GET_CLIENT_ID_REQUEST => Riakpb::RpbGetClientIdResp,
|
60
60
|
SET_CLIENT_ID_REQUEST => nil,
|
61
|
-
GET_SERVER_INFO_REQUEST =>
|
62
|
-
GET_REQUEST =>
|
63
|
-
PUT_REQUEST =>
|
61
|
+
GET_SERVER_INFO_REQUEST => Riakpb::RpbGetServerInfoResp,
|
62
|
+
GET_REQUEST => Riakpb::RpbGetResp,
|
63
|
+
PUT_REQUEST => Riakpb::RpbPutResp,
|
64
64
|
DEL_REQUEST => nil,
|
65
|
-
LIST_BUCKETS_REQUEST =>
|
66
|
-
LIST_KEYS_REQUEST =>
|
67
|
-
GET_BUCKET_REQUEST =>
|
65
|
+
LIST_BUCKETS_REQUEST => Riakpb::RpbListBucketsResp,
|
66
|
+
LIST_KEYS_REQUEST => Riakpb::RpbListKeysResp,
|
67
|
+
GET_BUCKET_REQUEST => Riakpb::RpbGetBucketResp,
|
68
68
|
SET_BUCKET_REQUEST => nil,
|
69
|
-
MAP_REDUCE_REQUEST =>
|
69
|
+
MAP_REDUCE_REQUEST => Riakpb::RpbMapRedResp
|
70
70
|
}
|
71
71
|
end
|
72
72
|
end
|
data/lib/riak.rb
CHANGED
@@ -8,14 +8,14 @@ require 'yaml'
|
|
8
8
|
require 'base64'
|
9
9
|
require 'riak/client_pb'
|
10
10
|
|
11
|
-
module
|
12
|
-
VERSION = '0.
|
11
|
+
module Riakpb
|
12
|
+
VERSION = '0.2.0'
|
13
13
|
|
14
14
|
# Domain objects
|
15
15
|
autoload :I18n, 'riak/i18n'
|
16
16
|
autoload :Client, 'riak/client'
|
17
17
|
autoload :Key, 'riak/key'
|
18
|
-
autoload :
|
18
|
+
autoload :Content, 'riak/content'
|
19
19
|
autoload :Bucket, 'riak/bucket'
|
20
20
|
autoload :MapReduce, 'riak/map_reduce'
|
21
21
|
|
data/load_stocks.rb
CHANGED
data/spec/riak/bucket_spec.rb
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
require File.expand_path("../spec_helper", File.dirname(__FILE__))
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe Riakpb::Bucket do
|
4
4
|
describe "when directly initializing" do
|
5
5
|
before :each do
|
6
|
-
@client =
|
6
|
+
@client = Riakpb::Client.new
|
7
7
|
end
|
8
8
|
|
9
9
|
it "should default with the client and name, and empty n_val or allow_mult" do
|
10
|
-
bucket =
|
10
|
+
bucket = Riakpb::Bucket.new(@client, "test")
|
11
11
|
bucket.client.should == @client
|
12
12
|
bucket.name.should == "test"
|
13
13
|
bucket.n_val.should == nil
|
@@ -15,14 +15,14 @@ describe Riak::Bucket do
|
|
15
15
|
end
|
16
16
|
|
17
17
|
it "should correctly accept an n_val" do
|
18
|
-
bucket =
|
18
|
+
bucket = Riakpb::Bucket.new(@client, "test")
|
19
19
|
bucket.n_val = 5
|
20
20
|
bucket.n_val.should be_kind_of(Fixnum)
|
21
21
|
lambda { bucket.n_val="5" }.should raise_error(ArgumentError)
|
22
22
|
end
|
23
23
|
|
24
24
|
it "should correctly accept an allow_mult" do
|
25
|
-
bucket =
|
25
|
+
bucket = Riakpb::Bucket.new(@client, "test")
|
26
26
|
bucket.allow_mult = true
|
27
27
|
bucket.allow_mult.should be_kind_of(TrueClass)
|
28
28
|
bucket.allow_mult = false
|
@@ -33,16 +33,16 @@ describe Riak::Bucket do
|
|
33
33
|
|
34
34
|
describe "when initialized from the Client" do
|
35
35
|
before :each do
|
36
|
-
@client =
|
36
|
+
@client = Riakpb::Client.new
|
37
37
|
@client.rpc.stub!(:request).and_return(nil)
|
38
38
|
end
|
39
39
|
|
40
40
|
it "should have set the properties" do
|
41
41
|
@client.rpc.stub!(:request).with(
|
42
|
-
|
43
|
-
|
42
|
+
Riakpb::Util::MessageCode::GET_BUCKET_REQUEST,
|
43
|
+
Riakpb::RpbGetBucketReq.new(:bucket => "goog")
|
44
44
|
).and_return(
|
45
|
-
|
45
|
+
Riakpb::RpbGetBucketResp.new(
|
46
46
|
{ :props => {
|
47
47
|
:allow_mult => false,
|
48
48
|
:n_val => 3
|
@@ -50,7 +50,7 @@ describe Riak::Bucket do
|
|
50
50
|
}
|
51
51
|
))
|
52
52
|
bucket = @client["goog"]
|
53
|
-
bucket.should be_kind_of(
|
53
|
+
bucket.should be_kind_of(Riakpb::Bucket)
|
54
54
|
bucket.client.should == @client
|
55
55
|
bucket.name.should == "goog"
|
56
56
|
bucket.n_val.should == 3
|
@@ -60,12 +60,12 @@ describe Riak::Bucket do
|
|
60
60
|
|
61
61
|
describe "key retrieval" do
|
62
62
|
before :each do
|
63
|
-
@client =
|
63
|
+
@client = Riakpb::Client.new
|
64
64
|
@client.rpc.stub!(:request).with(
|
65
|
-
|
66
|
-
|
65
|
+
Riakpb::Util::MessageCode::GET_BUCKET_REQUEST,
|
66
|
+
Riakpb::RpbGetBucketReq.new(:bucket => "goog")
|
67
67
|
).and_return(
|
68
|
-
|
68
|
+
Riakpb::RpbGetBucketResp.new(
|
69
69
|
{ :props => {
|
70
70
|
:allow_mult => false,
|
71
71
|
:n_val => 3
|
@@ -77,10 +77,10 @@ describe Riak::Bucket do
|
|
77
77
|
|
78
78
|
it "should list the keys within the bucket" do
|
79
79
|
@client.rpc.stub!(:request).with(
|
80
|
-
|
81
|
-
|
80
|
+
Riakpb::Util::MessageCode::LIST_KEYS_REQUEST,
|
81
|
+
Riakpb::RpbListKeysReq.new(:bucket => "goog")
|
82
82
|
).and_return(
|
83
|
-
|
83
|
+
Riakpb::RpbListKeysResp.new(
|
84
84
|
{ :keys => ["2010-04-12", "2008-01-10", "2006-06-06"],
|
85
85
|
:done => true
|
86
86
|
}
|
@@ -90,16 +90,16 @@ describe Riak::Bucket do
|
|
90
90
|
|
91
91
|
it "should return a key, when requested" do
|
92
92
|
@client.rpc.stub!(:request).with(
|
93
|
-
|
94
|
-
|
93
|
+
Riakpb::Util::MessageCode::GET_REQUEST,
|
94
|
+
Riakpb::RpbGetReq.new(:bucket => "goog", :key => "2010-04-12", :r => nil)
|
95
95
|
).and_return(
|
96
|
-
|
96
|
+
Riakpb::RpbGetResp.new(
|
97
97
|
{ :content => [],
|
98
98
|
:vclock => ""
|
99
99
|
}
|
100
100
|
))
|
101
|
-
@bucket["2010-04-12"].should be_kind_of(
|
101
|
+
@bucket["2010-04-12"].should be_kind_of(Riakpb::Key)
|
102
102
|
end
|
103
103
|
end # describe "key retrieval"
|
104
104
|
|
105
|
-
end #
|
105
|
+
end # Riakpb::Client
|
data/spec/riak/client_spec.rb
CHANGED
@@ -1,27 +1,27 @@
|
|
1
1
|
require File.expand_path("../spec_helper", File.dirname(__FILE__))
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe Riakpb::Client do
|
4
4
|
describe "when initializing" do
|
5
5
|
it "should default to the local interface on port 8087" do
|
6
|
-
client =
|
6
|
+
client = Riakpb::Client.new
|
7
7
|
client.host.should == "127.0.0.1"
|
8
8
|
client.port.should == 8087
|
9
9
|
end
|
10
10
|
|
11
11
|
it "should accept a host" do
|
12
|
-
client =
|
12
|
+
client = Riakpb::Client.new :host => "riak.basho.com"
|
13
13
|
client.host.should == "riak.basho.com"
|
14
14
|
end
|
15
15
|
|
16
16
|
it "should accept a port" do
|
17
|
-
client =
|
17
|
+
client = Riakpb::Client.new :port => 9000
|
18
18
|
client.port.should == 9000
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
describe "reconfiguring" do
|
23
23
|
before :each do
|
24
|
-
@client =
|
24
|
+
@client = Riakpb::Client.new
|
25
25
|
end
|
26
26
|
|
27
27
|
describe "setting the host" do
|
@@ -70,18 +70,18 @@ describe Riak::Client do
|
|
70
70
|
end
|
71
71
|
|
72
72
|
it "should reject an integer equal to the maximum client id" do
|
73
|
-
lambda { @client.client_id =
|
73
|
+
lambda { @client.client_id = Riakpb::Client::MAX_CLIENT_ID }.should raise_error(ArgumentError)
|
74
74
|
end
|
75
75
|
|
76
76
|
it "should reject an integer larger than the maximum client id" do
|
77
|
-
lambda { @client.client_id =
|
77
|
+
lambda { @client.client_id = Riakpb::Client::MAX_CLIENT_ID + 1 }.should raise_error(ArgumentError)
|
78
78
|
end
|
79
79
|
end # describe "setting the client id"
|
80
80
|
end # describe "reconfiguring"
|
81
81
|
|
82
82
|
describe "sending and receiving protocol buffers" do
|
83
83
|
before :each do
|
84
|
-
@client =
|
84
|
+
@client = Riakpb::Client.new
|
85
85
|
@client.rpc.stub!(:status).and_return(true)
|
86
86
|
@client.rpc.stub!(:request).and_return(nil)
|
87
87
|
end
|
@@ -89,7 +89,7 @@ describe Riak::Client do
|
|
89
89
|
describe "basic communication with riak node" do
|
90
90
|
it "should send a ping request and return true" do
|
91
91
|
@client.rpc.stub!(:request).with(
|
92
|
-
|
92
|
+
Riakpb::Util::MessageCode::PING_REQUEST
|
93
93
|
).and_return('')
|
94
94
|
|
95
95
|
@client.ping?.should == true
|
@@ -98,8 +98,8 @@ describe Riak::Client do
|
|
98
98
|
it "should request the connected riak node's server info and return a Hash" do
|
99
99
|
# test length or content? Need to look at what are considered acceptable values
|
100
100
|
@client.rpc.stub!(:request).with(
|
101
|
-
|
102
|
-
).and_return(
|
101
|
+
Riakpb::Util::MessageCode::GET_SERVER_INFO_REQUEST
|
102
|
+
).and_return(Riakpb::RpbGetServerInfoResp.new(
|
103
103
|
{ :node => "riak@127.0.0.1",
|
104
104
|
:server_version => "0.10.1"
|
105
105
|
}
|
@@ -115,21 +115,21 @@ describe Riak::Client do
|
|
115
115
|
describe "bucket retrieval (get)" do
|
116
116
|
it "should send a request to list available bucket names and return a Protobuf::Field::FieldArray" do
|
117
117
|
@client.rpc.stub!(:request).with(
|
118
|
-
|
118
|
+
Riakpb::Util::MessageCode::LIST_BUCKETS_REQUEST
|
119
119
|
).and_return(
|
120
|
-
|
120
|
+
Riakpb::RpbListBucketsResp.new(
|
121
121
|
{ :buckets => ["goog"] }
|
122
122
|
))
|
123
123
|
|
124
124
|
@client.buckets.should be_kind_of(Protobuf::Field::FieldArray)
|
125
125
|
end
|
126
126
|
|
127
|
-
it "should send a request with the bucket name and return a
|
127
|
+
it "should send a request with the bucket name and return a Riakpb::Bucket" do
|
128
128
|
@client.rpc.stub!(:request).with(
|
129
|
-
|
130
|
-
|
129
|
+
Riakpb::Util::MessageCode::GET_BUCKET_REQUEST,
|
130
|
+
Riakpb::RpbGetBucketReq.new(:bucket => "goog")
|
131
131
|
).and_return(
|
132
|
-
|
132
|
+
Riakpb::RpbGetBucketResp.new(
|
133
133
|
{ :props => {
|
134
134
|
:allow_mult => false,
|
135
135
|
:n_val => 3
|
@@ -137,15 +137,15 @@ describe Riak::Client do
|
|
137
137
|
}
|
138
138
|
))
|
139
139
|
|
140
|
-
@client.bucket("goog").should be_kind_of(
|
140
|
+
@client.bucket("goog").should be_kind_of(Riakpb::Bucket)
|
141
141
|
end
|
142
142
|
|
143
143
|
it "should send a request to list keys within a bucket and return a Protobuf::Field::FieldArray" do
|
144
144
|
@client.rpc.stub!(:request).with(
|
145
|
-
|
146
|
-
|
145
|
+
Riakpb::Util::MessageCode::LIST_KEYS_REQUEST,
|
146
|
+
Riakpb::RpbListKeysReq.new(:bucket => "goog")
|
147
147
|
).and_return(
|
148
|
-
|
148
|
+
Riakpb::RpbListKeysResp.new(
|
149
149
|
{ :keys => ["2010-04-12", "2008-01-10", "2006-06-06"],
|
150
150
|
:done => true
|
151
151
|
}
|
@@ -161,21 +161,21 @@ describe Riak::Client do
|
|
161
161
|
describe "key operations: retrieval (get), send (put) and delete (del)" do
|
162
162
|
before :each do
|
163
163
|
@client.rpc.stub!(:request).with(
|
164
|
-
|
165
|
-
|
164
|
+
Riakpb::Util::MessageCode::GET_REQUEST,
|
165
|
+
Riakpb::RpbGetReq.new(:bucket => "goog", :key => "2010-04-12", :r => nil)
|
166
166
|
).and_return(
|
167
|
-
|
167
|
+
Riakpb::RpbGetResp.new(
|
168
168
|
{ :content => [],
|
169
169
|
:vclock => ""
|
170
170
|
}
|
171
171
|
))
|
172
172
|
end
|
173
173
|
|
174
|
-
it "should send a request for a bucket/key pair and return a
|
175
|
-
@client.get_request("goog", "2010-04-12").should be_kind_of(
|
174
|
+
it "should send a request for a bucket/key pair and return a Riakpb::RpbGetResp" do
|
175
|
+
@client.get_request("goog", "2010-04-12").should be_kind_of(Riakpb::RpbGetResp)
|
176
176
|
end
|
177
177
|
|
178
|
-
it "should have a vclock attribute within
|
178
|
+
it "should have a vclock attribute within Riakpb::RpbGetResp of that is a String" do
|
179
179
|
@client.get_request("goog", "2010-04-12").vclock.should be_kind_of(String)
|
180
180
|
end
|
181
181
|
end # describe "key operations and retrieval"
|
@@ -183,10 +183,10 @@ describe Riak::Client do
|
|
183
183
|
describe "key operations and retrieval" do
|
184
184
|
before :each do
|
185
185
|
@client.rpc.stub!(:request).with(
|
186
|
-
|
187
|
-
|
186
|
+
Riakpb::Util::MessageCode::GET_REQUEST,
|
187
|
+
Riakpb::RpbGetReq.new(:bucket => "goog", :key => "2010-04-12", :r => nil)
|
188
188
|
).and_return(
|
189
|
-
|
189
|
+
Riakpb::RpbGetResp.new(
|
190
190
|
{ :content => [],
|
191
191
|
:vclock => ""
|
192
192
|
}
|
@@ -196,4 +196,4 @@ describe Riak::Client do
|
|
196
196
|
|
197
197
|
end # describe "key operations and retrieval"
|
198
198
|
end # describe "basic communication with riak node"
|
199
|
-
end #
|
199
|
+
end # Riakpb::Client
|
@@ -1,14 +1,14 @@
|
|
1
1
|
require File.expand_path("../spec_helper", File.dirname(__FILE__))
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe Riakpb::Content do
|
4
4
|
describe "when directly initializing" do
|
5
5
|
before :each do
|
6
|
-
@client =
|
6
|
+
@client = Riakpb::Client.new
|
7
7
|
@client.rpc.stub!(:request).with(
|
8
|
-
|
9
|
-
|
8
|
+
Riakpb::Util::MessageCode::GET_BUCKET_REQUEST,
|
9
|
+
Riakpb::RpbGetBucketReq.new(:bucket => "goog")
|
10
10
|
).and_return(
|
11
|
-
|
11
|
+
Riakpb::RpbGetBucketResp.new(
|
12
12
|
{ :props => {
|
13
13
|
:allow_mult => false,
|
14
14
|
:n_val => 3
|
@@ -16,11 +16,11 @@ describe Riak::RiakContent do
|
|
16
16
|
}
|
17
17
|
))
|
18
18
|
@bucket = @client["goog"]
|
19
|
-
@key =
|
19
|
+
@key = Riakpb::Key.new(@bucket, "test")
|
20
20
|
end
|
21
21
|
|
22
22
|
it "should default with nil attributes and links/usermeta as instances of Set/Hash" do
|
23
|
-
rcontent =
|
23
|
+
rcontent = Riakpb::Content.new(@key)
|
24
24
|
rcontent.key.should == @key
|
25
25
|
rcontent.value.should == nil
|
26
26
|
rcontent.content_type.should == nil
|
@@ -28,30 +28,30 @@ describe Riak::RiakContent do
|
|
28
28
|
rcontent.content_encoding.should == nil
|
29
29
|
rcontent.vtag.should == nil
|
30
30
|
rcontent.links.should be_kind_of(Hash)
|
31
|
-
rcontent.last_mod.should
|
31
|
+
rcontent.last_mod.should be_kind_of(Time)
|
32
32
|
rcontent.last_mod_usecs.should == nil
|
33
33
|
rcontent.usermeta.should be_kind_of(Hash)
|
34
34
|
end
|
35
35
|
|
36
36
|
it "should allow you to set the Key, after initialization" do
|
37
|
-
rcontent =
|
37
|
+
rcontent = Riakpb::Content.new(@key)
|
38
38
|
rcontent.key = @key
|
39
39
|
rcontent.key.should == @key
|
40
40
|
end
|
41
41
|
|
42
42
|
it "should accept a Key as an argument to new, tying it back to an owner" do
|
43
|
-
rcontent =
|
43
|
+
rcontent = Riakpb::Content.new(@key)
|
44
44
|
rcontent.key.should == @key
|
45
45
|
end
|
46
46
|
|
47
47
|
it "should serialize into a corresponding Protocol Buffer (RpbContent)" do
|
48
|
-
rcontent =
|
49
|
-
rcontent.to_pb.should be_kind_of(
|
48
|
+
rcontent = Riakpb::Content.new(@key, :value => "Test")
|
49
|
+
rcontent.to_pb.should be_kind_of(Riakpb::RpbContent)
|
50
50
|
end
|
51
51
|
|
52
|
-
it "should load a
|
53
|
-
rcontent =
|
54
|
-
rpb_content =
|
52
|
+
it "should load a Riakpb::RpbContent instance, returning a matching self, Content" do
|
53
|
+
rcontent = Riakpb::Content.new(@key)
|
54
|
+
rpb_content = Riakpb::RpbContent.new
|
55
55
|
rpb_content.value = "{\"Date\":\"2010-04-12\",\"Open\":567.35,\"High\":574.00,\"Low\":566.22,\"Close\":572.73,\"Volume\":2352400,\"Adj. Close\":572.73}"
|
56
56
|
rpb_content.content_type = "application/json"
|
57
57
|
rpb_content.vtag = "4DNB6Vt0zLl5VJ6P2xx9dc"
|
@@ -66,10 +66,9 @@ describe Riak::RiakContent do
|
|
66
66
|
rcontent.content_encoding.should == nil
|
67
67
|
rcontent.vtag.should == "4DNB6Vt0zLl5VJ6P2xx9dc"
|
68
68
|
rcontent.links.should be_kind_of(Hash)
|
69
|
-
rcontent.last_mod.should == 1274645855
|
70
|
-
rcontent.last_mod_usecs.should == 968694
|
69
|
+
rcontent.last_mod.should == Time.at(1274645855.968694)
|
71
70
|
rcontent.usermeta.should be_kind_of(Hash)
|
72
71
|
end
|
73
72
|
|
74
73
|
end # describe "when directly initializing"
|
75
|
-
end #
|
74
|
+
end # Riakpb::Content
|
data/spec/riak/key_spec.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
require File.expand_path("../spec_helper", File.dirname(__FILE__))
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe Riakpb::Key do
|
4
4
|
describe "when directly initializing" do
|
5
5
|
before :each do
|
6
|
-
@client =
|
6
|
+
@client = Riakpb::Client.new
|
7
7
|
@client.rpc.stub!(:request).with(
|
8
|
-
|
9
|
-
|
8
|
+
Riakpb::Util::MessageCode::GET_BUCKET_REQUEST,
|
9
|
+
Riakpb::RpbGetBucketReq.new(:bucket => "goog")
|
10
10
|
).and_return(
|
11
|
-
|
11
|
+
Riakpb::RpbGetBucketResp.new(
|
12
12
|
{ :props => {
|
13
13
|
:allow_mult => false,
|
14
14
|
:n_val => 3
|
@@ -19,36 +19,36 @@ describe Riak::Key do
|
|
19
19
|
end
|
20
20
|
|
21
21
|
it "should default with the bucket and name, and an empty vclock" do
|
22
|
-
key =
|
22
|
+
key = Riakpb::Key.new(@bucket, "test")
|
23
23
|
key.bucket.should == @bucket
|
24
24
|
key.name.should == "test"
|
25
25
|
key.vclock.should == nil
|
26
|
-
key.content.should be_kind_of(
|
26
|
+
key.content.should be_kind_of(Riakpb::Content)
|
27
27
|
end
|
28
28
|
|
29
29
|
it "should serialize into a Key Protocol Buffer (RpbPutReq)" do
|
30
30
|
@client.rpc.stub!(:request).with(
|
31
|
-
|
32
|
-
|
31
|
+
Riakpb::Util::MessageCode::GET_REQUEST,
|
32
|
+
Riakpb::RpbGetReq.new(:bucket => "goog", :key => "2010-04-12", :r => nil)
|
33
33
|
).and_return(
|
34
|
-
|
35
|
-
{ :content => [
|
34
|
+
Riakpb::RpbGetResp.new(
|
35
|
+
{ :content => [Riakpb::RpbContent.new(:value => "Test")],
|
36
36
|
:vclock => "k\xCEa```\xCC`\xCA\x05R,\xACL\xF7^e0%2\xE6\xB12\xC4s\xE6\x1D\xE5\xCB\x02\x00"
|
37
37
|
}
|
38
38
|
))
|
39
|
-
key = @bucket["2010-04-12"] #
|
39
|
+
key = @bucket["2010-04-12"] # Riakpb::Key.new(@bucket, "test")
|
40
40
|
pb_put = key.to_pb_put
|
41
|
-
pb_put.should be_kind_of(
|
41
|
+
pb_put.should be_kind_of(Riakpb::RpbPutReq)
|
42
42
|
pb_put.vclock.should == "k\xCEa```\xCC`\xCA\x05R,\xACL\xF7^e0%2\xE6\xB12\xC4s\xE6\x1D\xE5\xCB\x02\x00"
|
43
43
|
end
|
44
44
|
|
45
45
|
it "should serialize into a Link Protocol Buffer (RpbLink)" do
|
46
|
-
key =
|
46
|
+
key = Riakpb::Key.new(@bucket, "test")
|
47
47
|
pb_link = key.to_pb_link
|
48
|
-
pb_link.should be_kind_of(
|
48
|
+
pb_link.should be_kind_of(Riakpb::RpbLink)
|
49
49
|
pb_link.bucket.should == "goog"
|
50
50
|
pb_link.key.should == "test"
|
51
51
|
end
|
52
52
|
end # describe "when directly initializing"
|
53
|
-
end #
|
53
|
+
end # Riakpb::Key
|
54
54
|
|