public async Task PutByteArrayTest()
        {
            var mockData = new SampleClass()
            {
                Id = 123, Data = "Kratos"
            };

            var mockByte = mockData.ConvertToByte();
            var key      = Guid.NewGuid().ToString();
            var category = "spartan";

            var serializeMock          = GetMockSessionStoreSerializerFactory();
            var aerospikeStateProvider = new AerospikeStateProvider(new AerospikeClientFactory(), GetMockConfigurationProvider(), serializeMock.Object, new RecyclableStreamPool());
            await aerospikeStateProvider.AddAsync(new ItemKey(category, key), mockByte);



            var data = await aerospikeStateProvider.GetAsync <Byte[]>(new ItemKey(category, key));

            var item = Deserialize(data);

            Assert.Equal(mockData.Data, item.Data);

            serializeMock.Verify(x => x.Create(It.IsAny <Type>()), Times.Exactly(0));
        }
        public async Task MultipleItemPutTest()
        {
            var key      = Guid.NewGuid().ToString();
            var key1     = Guid.NewGuid().ToString();
            var category = "spartan";

            var mockData = new List <DataItem <SampleClass> >()
            {
                { new DataItem <SampleClass>(new ItemKey(category, key), new SampleClass()
                    {
                        Id = 12345, Data = "first"
                    }) }, { new DataItem <SampleClass>(new ItemKey(category, key1), new SampleClass()
                    {
                        Id = 12345, Data = "Second"
                    }) }
            };

            var aerospikeStateProvider = new AerospikeStateProvider(new AerospikeClientFactory(), GetMockConfigurationProvider(), GetMockSessionStoreSerializerFactory().Object, new RecyclableStreamPool());

            var dataItems = new DataItem <SampleClass> [2];
            await aerospikeStateProvider.AddMultipleAsync <SampleClass>(mockData.ToArray());

            var itemKeys = new ItemKey[2];

            itemKeys[0] = new ItemKey(category, key);
            itemKeys[1] = new ItemKey(category, key1);
            var item = await aerospikeStateProvider.GetAllAsync <SampleClass>(itemKeys);

            Assert.Equal(mockData[0].Value.Data, item[0].Value.Data);
            Assert.Equal(mockData[1].Value.Data, item[1].Value.Data);
        }
        public async Task SingleItemPutTest()
        {
            var mockData = new SampleClass()
            {
                Id = 123, Data = "Kratos"
            };
            var key      = Guid.NewGuid().ToString();
            var category = "spartan";

            var aerospikeStateProvider = new AerospikeStateProvider(new AerospikeClientFactory(), GetMockConfigurationProvider(), GetMockSessionStoreSerializerFactory().Object, new RecyclableStreamPool());
            await aerospikeStateProvider.AddAsync(new ItemKey(category, key), mockData);

            var item = await aerospikeStateProvider.GetAsync <SampleClass>(new ItemKey(category, key));

            Assert.Equal(mockData.Data, item.Data);
        }