public void EnumeratorReverseAll() { var store = new InMemoryKeyValueStore("store"); var serdes = new StringSerDes(); string deserialize(byte[] bytes) { return(serdes.Deserialize(bytes, new SerializationContext())); } byte[] key = serdes.Serialize("key", new SerializationContext()), value = serdes.Serialize("value", new SerializationContext()); byte[] key2 = serdes.Serialize("key2", new SerializationContext()), value2 = serdes.Serialize("value2", new SerializationContext()); store.Put(new Bytes(key), value); store.Put(new Bytes(key2), value2); var enumerator = store.ReverseAll().GetEnumerator(); Assert.IsTrue(enumerator.MoveNext()); Assert.AreEqual("key2", deserialize(enumerator.Current.Key.Get)); Assert.AreEqual("value2", deserialize(enumerator.Current.Value)); Assert.IsTrue(enumerator.MoveNext()); Assert.AreEqual("key", deserialize(enumerator.Current.Key.Get)); Assert.AreEqual("value", deserialize(enumerator.Current.Value)); Assert.IsFalse(enumerator.MoveNext()); enumerator.Dispose(); }