public virtual void CanSetAndGetObject()
        {
            var cache = GetCacheClient();
            if (cache == null)
                return;

            using (cache) {
                cache.FlushAll();

                var dt = DateTimeOffset.Now;
                var value = new MyData {Type = "test", Date = dt, Message = "Hello World"};
                cache.Set("test", value);
                value.Type = "modified";
                var cachedValue = cache.Get<MyData>("test");
                Assert.NotNull(cachedValue);
                Assert.Equal(dt, cachedValue.Date);
                Assert.False(value.Equals(cachedValue), "Should not be same reference object.");
                Assert.Equal("Hello World", cachedValue.Message);
                Assert.Equal("test", cachedValue.Type);
            }
        }