public void CasUpdatePreviousModifiedResponse() { var casBuilder1 = new CasRequestBuilder("key", "value1"); casBuilder1.WithCasUnique(789); Dispatch(casBuilder1.ToAsciiRequest()); var casBuilder2 = new CasRequestBuilder("key", "value2"); casBuilder2.WithCasUnique(567); var response2 = Dispatch(casBuilder2.ToAsciiRequest()); Assert.AreEqual("EXISTS\r\n", response2.ToAsciiString()); }
public void CasNoPrevious() { var casBuilder = new CasRequestBuilder("key", "value"); ulong lastCas = 123; casBuilder.WithCasUnique(lastCas); var response = Dispatch(casBuilder.ToAsciiRequest()); Assert.AreEqual("STORED\r\n", response.ToAsciiString()); var getBuilder = new GetRequestBuilder("get", "key"); var getResponse = Dispatch(getBuilder.ToAsciiRequest()); Assert.AreEqual("VALUE key 0 5 123\r\nvalue\r\nEND\r\n", getResponse.ToAsciiString()); }
public void CasUpdatePreviousModifiedValue() { var casBuilder1 = new CasRequestBuilder("key", "value1"); casBuilder1.WithCasUnique(789); Dispatch(casBuilder1.ToAsciiRequest()); var casBuilder2 = new CasRequestBuilder("key", "value2"); casBuilder2.WithCasUnique(567); Dispatch(casBuilder2.ToAsciiRequest()); var getBuilder = new GetRequestBuilder("get", "key"); var getResponse = Dispatch(getBuilder.ToAsciiRequest()); Assert.AreEqual("VALUE key 0 6 789\r\nvalue1\r\nEND\r\n", getResponse.ToAsciiString()); }
public void StoreCasInCapacity() { var setBuilder = new StoreRequestBuilder("set", "s", "12345"); Dispatch(setBuilder.ToAsciiRequest()); var builder = new CasRequestBuilder("key", "12345"); builder.WithCasUnique(123); Dispatch(builder.ToAsciiRequest()); var getBuilder = new GetRequestBuilder("get", "key"); Dispatch(getBuilder.ToAsciiRequest()); var builder2 = new CasRequestBuilder("key", "123456"); builder2.WithCasUnique(123); var response2 = Dispatch(builder2.ToAsciiRequest()); Assert.AreEqual("STORED\r\n", response2.ToAsciiString()); }