Esempio n. 1
0
        public void ListKeys()
        {
            ImmutableHashSet <KeyBytes> keys = KeyValueStore.ListKeys().ToImmutableHashSet();

            Assert.Equal(PreStoredDataCount, keys.Count);
            Assert.True(PreStoredDataKeys.ToImmutableHashSet().SetEquals(keys));
        }
Esempio n. 2
0
        public void ListKeys()
        {
            ImmutableHashSet <byte[]> keys = KeyValueStore.ListKeys().ToImmutableHashSet();

            Assert.Equal(PreStoredDataCount, keys.Count);
            var equalityComparer = new BytesEqualityComparer();

            Assert.True(PreStoredDataKeys.ToImmutableHashSet(equalityComparer).SetEquals(keys));
        }
Esempio n. 3
0
 public void Delete()
 {
     foreach (var(key, expectedValue) in PreStoredDataKeys.Zip(
                  PreStoredDataValues, ValueTuple.Create))
     {
         var actual = KeyValueStore.Get(key);
         Assert.Equal(expectedValue, actual);
     }
 }
Esempio n. 4
0
        public void Exists()
        {
            foreach (var(key, _) in PreStoredDataKeys.Zip(PreStoredDataValues, ValueTuple.Create))
            {
                Assert.True(KeyValueStore.Exists(key));
            }

            var randomKey = NewRandomKey();

            Assert.False(KeyValueStore.Exists(randomKey));
        }
Esempio n. 5
0
 public void DeleteMany()
 {
     KeyBytes[] nonExistentKeys = Enumerable.Range(0, 10)
                                  .Select(_ => NewRandomKey())
                                  .ToArray();
     KeyBytes[] keys = PreStoredDataKeys
                       .Concat(PreStoredDataKeys.Take(PreStoredDataCount / 2))
                       .Concat(nonExistentKeys)
                       .ToArray();
     KeyValueStore.Delete(keys);
     Assert.All(keys, k => Assert.False(KeyValueStore.Exists(k)));
 }
Esempio n. 6
0
        public void Get()
        {
            foreach (var(key, expectedValue) in PreStoredDataKeys.Zip(
                         PreStoredDataValues, ValueTuple.Create))
            {
                var actual = KeyValueStore.Get(key);
                Assert.Equal(expectedValue, actual);
            }

            var randomKey = NewRandomKey();

            Assert.Throws <KeyNotFoundException>(() => KeyValueStore.Get(randomKey));
        }
Esempio n. 7
0
        public void Overwrite()
        {
            foreach (var(key, expectedValue) in PreStoredDataKeys.Zip(
                         PreStoredDataValues, ValueTuple.Create))
            {
                var randomValue = Random.NextBytes(PreStoredDataValueSize);
                var actual      = KeyValueStore.Get(key);
                Assert.Equal(expectedValue, actual);

                KeyValueStore.Set(key, randomValue);
                actual = KeyValueStore.Get(key);
                Assert.Equal(randomValue, actual);
                Assert.NotEqual(expectedValue, actual);
            }
        }
Esempio n. 8
0
        public void GetMany()
        {
            KeyBytes[] nonExistentKeys = Enumerable.Range(0, 10)
                                         .Select(_ => NewRandomKey())
                                         .ToArray();
            KeyBytes[] keys = PreStoredDataKeys
                              .Concat(PreStoredDataKeys.Take(PreStoredDataCount / 2))
                              .Concat(nonExistentKeys)
                              .ToArray();
            IReadOnlyDictionary <KeyBytes, byte[]> result = KeyValueStore.Get(keys);

            Assert.Equal(PreStoredDataCount, result.Count);
            Assert.All(PreStoredDataKeys, k => Assert.Contains(k, result));
            Assert.All(nonExistentKeys, k => Assert.DoesNotContain(k, result));
        }