public void AddAndRetrieveItem() { var key = Guid.NewGuid(); var cache = new SimpleCache <Guid, string>(_expirationSpan, CacheExpirationTypes.Timed); cache.AddItem(new CacheItem <Guid, string> { Key = key, Value = "test" }); var item = cache[key]; Assert.IsNotNull(item); Assert.AreEqual("test", item.Value); }
public void InvalidateCache() { var cache = new SimpleCache <Guid, string>(_expirationSpan, CacheExpirationTypes.Timed); cache.AddItem(new CacheItem <Guid, string> { Key = Guid.Empty, Value = string.Empty }); var cachedCount = cache.Count(); cache.InvalidateCache(); Assert.AreNotEqual(cachedCount, cache.Count()); }
public void AddAndExpireItem() { var are = new AutoResetEvent(false); var cache = new SimpleCache <Guid, string>(_expirationSpan, CacheExpirationTypes.Timed); cache.ItemExpired += (sender, item) => { are.Set(); }; cache.AddItem(new CacheItem <Guid, string> { Key = Guid.NewGuid(), Value = "test" }); Thread.Sleep(1000); Thread.Sleep(_expirationSpan); var signaled = are.WaitOne(10); Assert.IsTrue(signaled); }