public static async Task ReadToEndAsync()
        {
            // Arrange
            var reader = new HttpRequestStreamReader(GetLargeStream(), Encoding.UTF8);

            var result = await reader.ReadToEndAsync();

            Assert.Equal(5000, result.Length);
        }
        public static async Task ReadToEndAsync_Reads_Asynchronously()
        {
            // Arrange
            var    stream       = new AsyncOnlyStreamWrapper(GetLargeStream());
            var    reader       = new HttpRequestStreamReader(stream, Encoding.UTF8);
            var    streamReader = new StreamReader(GetLargeStream());
            string expected     = await streamReader.ReadToEndAsync();

            // Act
            var actual = await reader.ReadToEndAsync();

            // Assert
            Assert.Equal(expected, actual);
        }