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); } }