public void Release_ResetsValue()
        {
            var cache = new LinkedListNodeCache <string>();
            var node  = cache.Acquire(null);

            Assert.IsNull(node.Value);
            node.Value = "TestString";
            cache.Release(node);
            Assert.IsNull(node.Value);
        }
        LinkedListNodeCache <T> CreateCache <T>(int count)
        {
            var cache = new LinkedListNodeCache <T>();
            var temp  = new List <LinkedListNode <T> >();

            for (int i = 0; i < count; i++)
            {
                temp.Add(cache.Acquire(default(T)));
            }
            Assert.AreEqual(count, cache.CreatedNodeCount);
            foreach (var t in temp)
            {
                cache.Release(t);
            }
            Assert.AreEqual(count, cache.CachedNodeCount);
            return(cache);
        }