Exemplo n.º 1
0
        public void FetchAllAndClearWithNullQueue()
        {
            //Arrange
            var cache = new InMemoryImpressionsCache(null);

            cache.AddImpression(new KeyImpression()
            {
                feature = "test", changeNumber = 100, keyName = "date", label = "testdate", time = 10000000
            });
            cache.AddImpression(new KeyImpression()
            {
                feature = "test2", changeNumber = 100, keyName = "date", label = "testdate", time = 10000000
            });

            //Act
            var result = cache.FetchAllAndClear();

            //Assert
            Assert.IsNull(result);
        }
Exemplo n.º 2
0
        public void FetchAllAndClearSuccessfully()
        {
            //Arrange
            var queue = new BlockingQueue <KeyImpression>(2);
            var cache = new InMemoryImpressionsCache(queue);

            cache.AddImpression(new KeyImpression()
            {
                feature = "test", changeNumber = 100, keyName = "date", label = "testdate", time = 10000000
            });
            cache.AddImpression(new KeyImpression()
            {
                feature = "test2", changeNumber = 100, keyName = "date", label = "testdate", time = 10000000
            });

            //Act
            var result  = cache.FetchAllAndClear();
            var element = queue.Dequeue();

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(2, result.Count);
            Assert.IsNull(element);
        }