예제 #1
0
        public void UpdateLastAccessTimeOnlyAffectsItemInCorrectPartition()
        {
            CacheItem item = new CacheItem("key", "value", CacheItemPriority.Low, null);
            DateTime  originalTimeStamp = item.LastAccessedTime;

            firstCache.Add(item);

            secondCache.UpdateLastAccessedTime("key", DateTime.Now + TimeSpan.FromHours(1.0));

            Hashtable firstCacheContents = firstCache.Load();
            CacheItem retrievedItem      = firstCacheContents["key"] as CacheItem;

            Assert.AreEqual(originalTimeStamp.ToString(), retrievedItem.LastAccessedTime.ToString());

            DateTime newTimestamp = DateTime.Now + TimeSpan.FromMinutes(2.0);

            firstCache.UpdateLastAccessedTime("key", newTimestamp);

            Hashtable afterChangeContents = firstCache.Load();
            CacheItem changedItem         = afterChangeContents["key"] as CacheItem;

            Assert.AreEqual(newTimestamp.ToString(), changedItem.LastAccessedTime.ToString());
        }