public void T01_RecordOffsetList_sortedWalk() { string[] testvalues = { "test/1", "test/2", "test/3" }; byte[] databuffer; // encode a buffer { MemoryStream ms = new MemoryStream(); // add some values to the block encoder SegmentBlockEncoderRecordOffsetList enc = new SegmentBlockEncoderRecordOffsetList(); enc.setStream(ms); for (int i = 0; i < testvalues.Length; i++) { RecordKey tkey = new RecordKey().appendParsedKey(testvalues[i]); RecordUpdate tupdate = RecordUpdate.WithPayload("data: " + testvalues[i]); enc.add(tkey, tupdate); } enc.flush(); databuffer = ms.ToArray(); } Console.WriteLine("databuffer len : " + databuffer.Length); Console.WriteLine("Hex: " + Lsd.ToHexString(databuffer)); // test sortedWalk { BlockAccessor rs = new BlockAccessor(databuffer); var decoder = new SegmentBlockDecoderRecordOffsetList(rs); int count = 0; foreach (var row in decoder.sortedWalk()) { Console.WriteLine(row); count++; } Assert.AreEqual(testvalues.Length, count, "wrong number of elements in sorted walk"); } }