private SetResponse SaveSet(string key = null) { var updateBuilder = new UpdateSet.Builder(DefaultAdds, null) .WithBucketType(BucketType) .WithBucket(Bucket) .WithTimeout(TimeSpan.FromMilliseconds(20000)); if (!string.IsNullOrEmpty(key)) { updateBuilder.WithKey(key); } UpdateSet cmd = updateBuilder.Build(); RiakResult rslt = client.Execute(cmd); Assert.IsTrue(rslt.IsSuccess, rslt.ErrorMessage); SetResponse response = cmd.Response; Keys.Add(response.Key); Assert.True(EnumerableUtil.NotNullOrEmpty(response.Context)); return(response); }
public void Should_Build_DtUpdateReq_Correctly() { var updateSetCommandBuilder = new UpdateSet.Builder(DefaultAdds, DefaultRemoves); var q1 = new Quorum(1); var q2 = new Quorum(2); var q3 = new Quorum(3); updateSetCommandBuilder .WithBucketType(BucketType) .WithBucket(Bucket) .WithKey(Key) .WithW(q3) .WithPW(q1) .WithDW(q2) .WithReturnBody(true) .WithIncludeContext(false) .WithContext(Context) .WithTimeout(TimeSpan.FromSeconds(20)); UpdateSet updateSetCommand = updateSetCommandBuilder.Build(); DtUpdateReq protobuf = (DtUpdateReq)updateSetCommand.ConstructRequest(false); Assert.AreEqual(Encoding.UTF8.GetBytes(BucketType), protobuf.type); Assert.AreEqual(Encoding.UTF8.GetBytes(Bucket), protobuf.bucket); Assert.AreEqual(Encoding.UTF8.GetBytes(Key), protobuf.key); Assert.AreEqual((uint)q3, protobuf.w); Assert.AreEqual((uint)q1, protobuf.pw); Assert.AreEqual((uint)q2, protobuf.dw); Assert.IsTrue(protobuf.return_body); Assert.IsFalse(protobuf.include_context); Assert.AreEqual(20000, protobuf.timeout); SetOp setOpMsg = protobuf.op.set_op; Assert.AreEqual(DefaultAdds, setOpMsg.adds); Assert.AreEqual(DefaultRemoves, setOpMsg.removes); }
public void Should_Build_DtUpdateReq_Correctly() { var updateSetCommandBuilder = new UpdateSet.Builder(DefaultAdds, DefaultRemoves); var q1 = new Quorum(1); var q2 = new Quorum(2); var q3 = new Quorum(3); updateSetCommandBuilder .WithBucketType(BucketType) .WithBucket(Bucket) .WithKey(Key) .WithW(q3) .WithPW(q1) .WithDW(q2) .WithReturnBody(true) .WithIncludeContext(false) .WithContext(Context) .WithTimeout(TimeSpan.FromSeconds(20)); UpdateSet updateSetCommand = updateSetCommandBuilder.Build(); DtUpdateReq protobuf = (DtUpdateReq)updateSetCommand.ConstructPbRequest(); Assert.AreEqual(Encoding.UTF8.GetBytes(BucketType), protobuf.type); Assert.AreEqual(Encoding.UTF8.GetBytes(Bucket), protobuf.bucket); Assert.AreEqual(Encoding.UTF8.GetBytes(Key), protobuf.key); Assert.AreEqual(q3, protobuf.w); Assert.AreEqual(q1, protobuf.pw); Assert.AreEqual(q2, protobuf.dw); Assert.IsTrue(protobuf.return_body); Assert.IsFalse(protobuf.include_context); Assert.AreEqual(20000, protobuf.timeout); SetOp setOpMsg = protobuf.op.set_op; Assert.AreEqual(DefaultAdds, setOpMsg.adds); Assert.AreEqual(DefaultRemoves, setOpMsg.removes); }
private SetResponse SaveSet(string key = null) { var updateBuilder = new UpdateSet.Builder(DefaultAdds, null) .WithBucketType(BucketType) .WithBucket(Bucket) .WithTimeout(TimeSpan.FromMilliseconds(20000)); if (!string.IsNullOrEmpty(key)) { updateBuilder.WithKey(key); } UpdateSet cmd = updateBuilder.Build(); RiakResult rslt = client.Execute(cmd); Assert.IsTrue(rslt.IsSuccess, rslt.ErrorMessage); SetResponse response = cmd.Response; Keys.Add(response.Key); Assert.True(EnumerableUtil.NotNullOrEmpty(response.Context)); return response; }
public void CitiesSetAddRemoveAndView() { var adds = new HashSet <string> { "Toronto", "Montreal" }; var builder = new UpdateSet.Builder() .WithBucketType("sets") .WithBucket("travel") .WithKey("cities") .WithAdditions(adds); UpdateSet cmd = builder.Build(); RiakResult rslt = client.Execute(cmd); CheckResult(rslt); SetResponse response = cmd.Response; Assert.Contains("Toronto", response.AsStrings.ToArray()); Assert.Contains("Montreal", response.AsStrings.ToArray()); var removes = new HashSet <string> { "Montreal" }; adds = new HashSet <string> { "Hamilton", "Ottawa" }; Assert.True(EnumerableUtil.NotNullOrEmpty(response.Context)); builder .WithAdditions(adds) .WithRemovals(removes) .WithContext(response.Context); cmd = builder.Build(); rslt = client.Execute(cmd); CheckResult(rslt); response = cmd.Response; var responseStrings = response.AsStrings.ToArray(); Assert.Contains("Toronto", responseStrings); Assert.Contains("Hamilton", responseStrings); Assert.Contains("Ottawa", responseStrings); foreach (var value in response.AsStrings) { Console.WriteLine("Cities Set Value: {0}", value); } Console.WriteLine("Cities Set Size: {0}", responseStrings.Length); bool includesVancouver = response.AsStrings.Any(v => v == "Vancouver"); bool includesOttawa = response.AsStrings.Any(v => v == "Ottawa"); Assert.False(includesVancouver); Assert.True(includesOttawa); }
public void CitiesSetAddRemoveAndView() { var adds = new HashSet<string> { "Toronto", "Montreal" }; var builder = new UpdateSet.Builder() .WithBucketType("sets") .WithBucket("travel") .WithKey("cities") .WithAdditions(adds); UpdateSet cmd = builder.Build(); RiakResult rslt = client.Execute(cmd); CheckResult(rslt); SetResponse response = cmd.Response; Assert.Contains("Toronto", response.AsStrings.ToArray()); Assert.Contains("Montreal", response.AsStrings.ToArray()); var removes = new HashSet<string> { "Montreal" }; adds = new HashSet<string> { "Hamilton", "Ottawa" }; Assert.True(EnumerableUtil.NotNullOrEmpty(response.Context)); builder .WithAdditions(adds) .WithRemovals(removes) .WithContext(response.Context); cmd = builder.Build(); rslt = client.Execute(cmd); CheckResult(rslt); response = cmd.Response; var responseStrings = response.AsStrings.ToArray(); Assert.Contains("Toronto", responseStrings); Assert.Contains("Hamilton", responseStrings); Assert.Contains("Ottawa", responseStrings); foreach (var value in response.AsStrings) { Console.WriteLine("Cities Set Value: {0}", value); } Console.WriteLine("Cities Set Size: {0}", responseStrings.Length); bool includesVancouver = response.AsStrings.Any(v => v == "Vancouver"); bool includesOttawa = response.AsStrings.Any(v => v == "Ottawa"); Assert.False(includesVancouver); Assert.True(includesOttawa); }