Example #1
0
        public void RocksDbOptionsProviderCreateCfOptions()
        {
            var env32 = new Mock <ISystemEnvironment>();

            env32.SetupGet(s => s.Is32BitProcess)
            .Returns(() => true);

            var env64 = new Mock <ISystemEnvironment>();

            env64.SetupGet(s => s.Is32BitProcess)
            .Returns(() => false);
            var provider32 = new RocksDbOptionsProvider(
                env32.Object,
                true,
                Option.None <ulong>(),
                Option.None <ulong>(),
                Option.None <int>(),
                Option.None <StorageLogLevel>());
            var provider64 = new RocksDbOptionsProvider(
                env64.Object,
                true,
                Option.None <ulong>(),
                Option.None <ulong>(),
                Option.None <int>(),
                Option.None <StorageLogLevel>());

            // act
            ColumnFamilyOptions newOptions32 = provider32.GetColumnFamilyOptions();
            ColumnFamilyOptions newOptions64 = provider64.GetColumnFamilyOptions();

            // assert
            Assert.NotNull(newOptions32);
            Assert.NotNull(newOptions64);
        }
Example #2
0
        public async Task GetRemoveDefaultPartitionTestAsync()
        {
            var options = new RocksDbOptionsProvider(new SystemEnvironment(), true);

            var partitionsList = new[]
            {
                "Partition1"
            };

            using (IDbStoreProvider rocksDbStoreProvider = DbStoreProvider.Create(options, this.rocksDbFolder, partitionsList))
            {
                Assert.NotNull(rocksDbStoreProvider);

                IDbStore store = rocksDbStoreProvider.GetDbStore();

                string key      = "key";
                string val      = "val";
                byte[] valBytes = val.ToBytes();
                await store.Put(key.ToBytes(), valBytes);

                Option <byte[]> valRetrieved = await store.Get("key".ToBytes());

                byte[] valRetrievedBytes = valRetrieved.GetOrElse(string.Empty.ToBytes());
                Assert.True(valRetrievedBytes.SequenceEqual(valBytes));
            }
        }
Example #3
0
        public void CreateTest()
        {
            var options = new RocksDbOptionsProvider(new SystemEnvironment(), true);

            var partitionsList1 = new[]
            {
                "Partition1",
                "Partition2",
                "Partition3",
            };

            using (IDbStoreProvider rocksDbStoreProvider = DbStoreProvider.Create(options, this.rocksDbFolder, partitionsList1))
            {
                Assert.NotNull(rocksDbStoreProvider);
            }

            var partitionsList2 = new[]
            {
                "Partition3",
                "Partition4"
            };

            using (IDbStoreProvider rocksDbStoreProvider = DbStoreProvider.Create(options, this.rocksDbFolder, partitionsList2))
            {
                Assert.NotNull(rocksDbStoreProvider);
            }

            var partitionsList3 = new string[0];

            using (IDbStoreProvider rocksDbStoreProvider = DbStoreProvider.Create(options, this.rocksDbFolder, partitionsList3))
            {
                Assert.NotNull(rocksDbStoreProvider);
            }
        }
Example #4
0
        public void CreateWithNullPartitionsPathThrowsAsync()
        {
            //Arrange
            var options = new RocksDbOptionsProvider(new SystemEnvironment(), true);

            //Act
            //Assert
            Assert.Throws <ArgumentNullException>(() => RocksDbWrapper.Create(options, "AnyPath", null));
        }
Example #5
0
        public void CreateWithNullPathThrowsAsync()
        {
            //Arrange
            ICollection <string> partitions = new List <string>();
            var options = new RocksDbOptionsProvider(new SystemEnvironment(), true);

            //Act
            //Assert
            Assert.Throws <ArgumentException>(() => RocksDbWrapper.Create(options, null, partitions));
            partitions.Clear();
        }
Example #6
0
        public TestRocksDbStoreProvider()
        {
            var    options    = new RocksDbOptionsProvider(new SystemEnvironment(), true);
            string tempFolder = Path.GetTempPath();

            this.rocksDbFolder = Path.Combine(tempFolder, $"edgeTestDb{Guid.NewGuid()}");
            if (Directory.Exists(this.rocksDbFolder))
            {
                Directory.Delete(this.rocksDbFolder);
            }
            Directory.CreateDirectory(this.rocksDbFolder);
            this.rocksDbStoreProvider = DbStoreProvider.Create(options, this.rocksDbFolder, new string[0]);
        }
        public void RocksDbOptionsProviderCreatesDbOptions()
        {
            // arrange
            var env32 = new Mock <ISystemEnvironment>();

            env32.SetupGet(s => s.Is32BitProcess)
            .Returns(() => true);

            var env64 = new Mock <ISystemEnvironment>();

            env64.SetupGet(s => s.Is32BitProcess)
            .Returns(() => false);
            var provider32 = new RocksDbOptionsProvider(env32.Object, true);
            var provider64 = new RocksDbOptionsProvider(env64.Object, true);

            // act
            DbOptions newOptions32 = provider32.GetDbOptions();
            DbOptions newOptions64 = provider64.GetDbOptions();

            // assert
            Assert.NotNull(newOptions32);
            Assert.NotNull(newOptions64);
        }