Пример #1
0
        public void ClearAllClearsAllCache()
        {
            // Arrange
            var          cache = new MemoryCacheProvider(this.fixture.AppConfiguration.TerminologySqlSettings);
            const string Key1  = "key1";
            const string Key2  = "key2";
            const string Key3  = "key3";
            var          obj1  = new TestObject {
                Text = "Test1", Stamp = DateTime.Now
            };
            var obj2 = new TestObject {
                Text = "Test2", Stamp = DateTime.Now
            };
            var obj3 = new TestObject {
                Text = "Test3", Stamp = DateTime.Now
            };

            cache.GetItem(Key1, () => obj1);
            cache.GetItem(Key2, () => obj2);
            cache.GetItem(Key3, () => obj3);

            cache.GetItem(Key1).Should().NotBeNull();
            cache.GetItem(Key2).Should().NotBeNull();
            cache.GetItem(Key3).Should().NotBeNull();

            var instanceKey = cache.InstanceKey;

            // Act
            cache.ClearAll();

            // Assert
            cache.GetItem(Key1).Should().BeNull();
            cache.GetItem(Key2).Should().BeNull();
            cache.GetItem(Key3).Should().BeNull();
            instanceKey.Should().NotBe(cache.InstanceKey);
        }