コード例 #1
0
        public void ShouldFailRemoveFromCacheItemVersionWithUpdate()
        {
            var expectedOldValue = TestContext.TestName;
            var expectedNewValue = "Updated " + TestContext.TestName;
            var key = "Key" + TestContext.TestName;
            var dcf = new DataCacheFactory();
            var dc = dcf.GetDefaultCache();

            dc.Remove(key);

            // Add the value
            var itemVersion = dc.Add(key, expectedOldValue);
            // Will update the item version
            var newItemVersion = dc.Put(key, expectedNewValue, itemVersion);

            var sut = new DataCacheRemove();

            // Using input arguments
            var input = new Dictionary<string, object>
                            {
                                {"Key", key},
                                {"ItemVersion", itemVersion},
                            };

            WorkflowInvoker.Invoke(sut, input);

            var item = dc.GetCacheItem(key);

            // Assert
            Assert.IsNotNull(item);
            Assert.AreEqual(newItemVersion, item.Version);
        }
コード例 #2
0
        public void ShouldFailRemoveFromCacheLockHandleWithUpdate()
        {
            var expectedOldValue = TestContext.TestName;
            var expectedNewValue = "Updated " + TestContext.TestName;
            var key = "Key" + TestContext.TestName;
            var dcf = new DataCacheFactory();
            var dc = dcf.GetDefaultCache();

            dc.Remove(key);

            // Add the value
            var itemVersion = dc.Add(key, expectedOldValue);
            // Will update the item version
            var newItemVersion = dc.Put(key, expectedNewValue, itemVersion);

            DataCacheLockHandle lockHandle;
            dc.GetAndLock(key, TimeSpan.FromMinutes(5), out lockHandle);

            var sut = new DataCacheRemove();

            // Using input arguments
            var input = new Dictionary<string, object>
                            {
                                {"Key", key},
                                {"LockHandle", lockHandle},
                            };

            WorkflowInvoker.Invoke(sut, input);

            var item = dc.GetCacheItem(key);

            // Assert

            // Version does not matter when removing with a lock handle
            Assert.IsNull(item);
        }
コード例 #3
0
        public void ShouldRemoveFromCacheLockHandleRegion()
        {
            var expectedValue = TestContext.TestName;
            var key = "Key" + TestContext.TestName;
            var region = "Region" + TestContext.TestName;
            var dcf = new DataCacheFactory();
            var dc = dcf.GetDefaultCache();

            dc.CreateRegion(region);
            dc.Remove(key, region);

            // Add the value
            var itemVersion = dc.Add(key, expectedValue, region);
            DataCacheLockHandle lockHandle;
            dc.GetAndLock(key, TimeSpan.FromMinutes(5), out lockHandle, region);

            var sut = new DataCacheRemove();

            // Using input arguments
            var input = new Dictionary<string, object>
                            {
                                {"Key", key},
                                {"Region", region},
                                {"LockHandle", lockHandle},
                            };

            WorkflowInvoker.Invoke(sut, input);

            var value = dc.Get(key, region);

            // Assert
            Assert.IsNull(value);
        }
コード例 #4
0
        public void ShouldRemoveFromCacheRegion()
        {
            var expectedValue = TestContext.TestName;
            var key = "Key" + TestContext.TestName;
            var region = "Region" + TestContext.TestName;
            var dcf = new DataCacheFactory();
            var dc = dcf.GetDefaultCache();

            dc.CreateRegion(region);
            dc.Remove(key, region);

            // Add the value
            dc.Add(key, expectedValue, region);

            var sut = new DataCacheRemove {Key = key, Region = region};

            WorkflowInvoker.Invoke(sut);

            var value = dc.Get(key, region);

            // Assert
            Assert.IsNull(value);
        }
コード例 #5
0
        public void ShouldRemoveFromCacheItemVersion()
        {
            var expectedValue = TestContext.TestName;
            var key = "Key" + TestContext.TestName;
            var dcf = new DataCacheFactory();
            var dc = dcf.GetDefaultCache();

            dc.Remove(key);

            // Add the value
            var itemVersion = dc.Add(key, expectedValue);

            var sut = new DataCacheRemove();

            // Using input arguments
            var input = new Dictionary<string, object>
                            {
                                {"Key", key},
                                {"ItemVersion", itemVersion},
                            };

            WorkflowInvoker.Invoke(sut, input);

            var value = dc.Get(key);

            // Assert
            Assert.IsNull(value);
        }