CodeProject.ObjectPool.UnitTests.Specialized.MemoryStreamPoolTests.ShouldReturnToPoolWhenStreamIsSmallAndStreamIsManuallyDisposed C# (CSharp) Метод

ShouldReturnToPoolWhenStreamIsSmallAndStreamIsManuallyDisposed() приватный Метод

private ShouldReturnToPoolWhenStreamIsSmallAndStreamIsManuallyDisposed ( string text ) : void
text string
Результат void
        public void ShouldReturnToPoolWhenStreamIsSmallAndStreamIsManuallyDisposed(string text)
        {
            string result;
#pragma warning disable CC0022 // Should dispose object
            var pms = _memoryStreamPool.GetObject();

            var sw = new StreamWriter(pms.MemoryStream);
            sw.Write(text);
            sw.Flush();

            pms.MemoryStream.Position = 0L;

            var sr = new StreamReader(pms.MemoryStream);
            result = sr.ReadToEnd();

            pms.MemoryStream.Capacity.ShouldBeLessThanOrEqualTo(_memoryStreamPool.MaximumMemoryStreamCapacity);
            pms.MemoryStream.Dispose();
#pragma warning restore CC0022 // Should dispose object

            result.ShouldBe(text);

            _memoryStreamPool.ObjectsInPoolCount.ShouldBe(_memoryStreamPool.MinimumPoolSize);
            _memoryStreamPool.Diagnostics.ReturnedToPoolCount.ShouldBe(1);
            _memoryStreamPool.Diagnostics.ObjectResetFailedCount.ShouldBe(0);
        }