Ejemplo n.º 1
0
        public void StoreTest()
        {
            using var store = new MemoryStore();

            store.Delete(new byte[] { 1 });
            Assert.AreEqual(null, store.TryGet(new byte[] { 1 }));
            store.Put(new byte[] { 1 }, new byte[] { 1, 2, 3 });
            CollectionAssert.AreEqual(new byte[] { 1, 2, 3 }, store.TryGet(new byte[] { 1 }));

            store.Put(new byte[] { 2 }, new byte[] { 4, 5, 6 });
            CollectionAssert.AreEqual(new byte[] { 1 }, store.Seek(Array.Empty <byte>(), SeekDirection.Forward).Select(u => u.Key).First());
            CollectionAssert.AreEqual(new byte[] { 2 }, store.Seek(new byte[] { 2 }, SeekDirection.Backward).Select(u => u.Key).First());
            CollectionAssert.AreEqual(new byte[] { 1 }, store.Seek(new byte[] { 1 }, SeekDirection.Backward).Select(u => u.Key).First());

            store.Delete(new byte[] { 1 });
            store.Delete(new byte[] { 2 });

            store.Put(new byte[] { 0x00, 0x00, 0x00 }, new byte[] { 0x00 });
            store.Put(new byte[] { 0x00, 0x00, 0x01 }, new byte[] { 0x01 });
            store.Put(new byte[] { 0x00, 0x00, 0x02 }, new byte[] { 0x02 });
            store.Put(new byte[] { 0x00, 0x00, 0x03 }, new byte[] { 0x03 });
            store.Put(new byte[] { 0x00, 0x00, 0x04 }, new byte[] { 0x04 });

            var entries = store.Seek(Array.Empty <byte>(), SeekDirection.Backward).ToArray();

            Assert.AreEqual(entries.Count(), 0);
        }
Ejemplo n.º 2
0
        public void BasicCRUD()
        {
            var store = new MemoryStore();
                var tape = new Tape()
                {
                    Id = "foo"
                };
                store.Insert(tape);
                var tape2 = store.Select(tape.Id);
                Assert.IsNotNull(tape2);

                // make sure tapes are cloned
                tape2.Comment = "bar";
                var tape3 = store.Select(tape2.Id);
                Assert.AreNotEqual(tape2.Comment, tape3.Comment);

                // update
                store.Update(tape2);
                tape3 = store.Select(tape2.Id);
                Assert.AreEqual(tape2.Comment, tape3.Comment);

                // delete
                store.Delete(tape3.Id);
                Assert.AreEqual(0, store.List().Count);
        }
Ejemplo n.º 3
0
        public void BasicCRUD()
        {
            var store = new MemoryStore();
            var tape  = new Tape()
            {
                Id = "foo"
            };

            store.Insert(tape);
            var tape2 = store.Select(tape.Id);

            Assert.IsNotNull(tape2);

            // make sure tapes are cloned
            tape2.Comment = "bar";
            var tape3 = store.Select(tape2.Id);

            Assert.AreNotEqual(tape2.Comment, tape3.Comment);

            // update
            store.Update(tape2);
            tape3 = store.Select(tape2.Id);
            Assert.AreEqual(tape2.Comment, tape3.Comment);

            // delete
            store.Delete(tape3.Id);
            Assert.AreEqual(0, store.List().Count);
        }
Ejemplo n.º 4
0
        public void StoreTest()
        {
            using var store = new MemoryStore();

            store.Delete(new byte[] { 1 });
            Assert.AreEqual(null, store.TryGet(new byte[] { 1 }));
            store.Put(new byte[] { 1 }, new byte[] { 1, 2, 3 });
            CollectionAssert.AreEqual(new byte[] { 1, 2, 3 }, store.TryGet(new byte[] { 1 }));

            store.Put(new byte[] { 2 }, new byte[] { 4, 5, 6 });
            CollectionAssert.AreEqual(new byte[] { 1 }, store.Seek(new byte[] { }, SeekDirection.Forward).Select(u => u.Key).First());
            CollectionAssert.AreEqual(new byte[] { 2 }, store.Seek(new byte[] { }, SeekDirection.Backward).Select(u => u.Key).First());
            CollectionAssert.AreEqual(new byte[] { 1 }, store.Seek(new byte[] { 1 }, SeekDirection.Backward).Select(u => u.Key).First());

            store.Delete(new byte[] { 1 });
        }