Exemplo n.º 1
0
        public async Task WriteLineReadOnlyMemoryAsync_TokenCanceled_ReturnsCanceledTask()
        {
            // Arrange
            var stream            = new TestMemoryStream();
            var writer            = new HttpResponseStreamWriter(stream, Encoding.UTF8);
            var memory            = new ReadOnlyMemory <char>(new char[] { 'a' });
            var cancellationToken = new CancellationToken(true);

            // Act
            using (writer)
            {
                await Assert.ThrowsAsync <TaskCanceledException>(async() => await writer.WriteLineAsync(memory, cancellationToken));
            }

            // Assert
            Assert.Equal(0, stream.Length);
        }
Exemplo n.º 2
0
        public async Task WriteLineReadOnlyMemoryAsync_WritesToStream(int byteLength, int newLineLength)
        {
            // Arrange
            var stream = new TestMemoryStream();
            var writer = new HttpResponseStreamWriter(stream, Encoding.UTF8);

            writer.NewLine = new string('\n', newLineLength);

            // Act
            using (writer)
            {
                var array  = new string('a', byteLength).ToCharArray();
                var memory = new ReadOnlyMemory <char>(array);
                await writer.WriteLineAsync(memory);
            }

            // Assert
            Assert.Equal(byteLength + newLineLength, stream.Length);
        }