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