public void TestGetDataWithStat() { using (var requestHandler = new TestRequestHandler()) using (var client = new RingMasterClient(requestHandler)) { string path = this.GetRandomString(); var watcher = new TestWatcher(this.GetRandomInt()); byte[] expectedData = this.GetRandomData(); var expectedStat = new Stat() { Version = this.GetRandomInt() }; requestHandler.Implementation = request => { Assert.IsTrue(request is RequestGetData); var getDataRequest = (RequestGetData)request; Assert.AreEqual(path, getDataRequest.Path); Assert.AreEqual(watcher.Id, getDataRequest.Watcher.Id); return(new RequestResponse() { ResultCode = (int)RingMasterException.Code.Ok, Content = expectedData, Stat = expectedStat }); }; var dataAndStat = client.GetDataWithStat(path, watcher).Result; Assert.AreEqual(expectedStat.Version, dataAndStat.Item1.Version); CollectionAssert.AreEqual(expectedData, dataAndStat.Item2); } }