public void TestGetStateByRangeWithPagination() { ChaincodeStub stub = new ChaincodeStub("myc", "txId", handler.Object, new List <ByteString>(), null); string startKey = "START"; string endKey = "END"; KV[] keyValues = PrepareKeyValuePairs(2); QueryResponse value = PrepareQueryResponseForRange(keyValues, true); QueryMetadata queryMetadata = new QueryMetadata { Bookmark = "aaaa", PageSize = 1 }; handler.Setup((a) => a.GetStateByRangeAsync("myc", "txId", "", startKey, endKey, queryMetadata.ToByteString(), token)).ReturnsAsync(value); IQueryResultsEnumerable <IKeyValue> queryResultsIterator = stub.GetStateByRangeWithPagination(startKey, endKey, 1, "aaaa"); Assert.That.Contains(queryResultsIterator, keyValues.Select(a => new KeyValue(a))); Assert.AreEqual(queryResultsIterator.GetMetadata().FetchedRecordsCount, 2); Assert.AreEqual(queryResultsIterator.GetMetadata().Bookmark, "bbbb"); }