public async Task StreamToBytesAsyncNonSeekableAsync() { byte[] bytes = new byte[10]; this.random.NextBytes(bytes); TestNonSeekableStream stream = new TestNonSeekableStream(bytes, maxLengthToReturnPerRead: 3); { Memory <byte> actual = await BatchExecUtils.StreamToMemoryAsync(stream, maximumLength : 100, cancellationToken : CancellationToken.None); Assert.IsTrue(actual.Span.SequenceEqual(bytes)); } { stream.Reset(); Memory <byte> actual = await BatchExecUtils.StreamToMemoryAsync(stream, maximumLength : 10, cancellationToken : CancellationToken.None); Assert.IsTrue(actual.Span.SequenceEqual(bytes)); } { stream.Reset(); try { Memory <byte> actual = await BatchExecUtils.StreamToMemoryAsync(stream, maximumLength : 9, cancellationToken : CancellationToken.None); Assert.Fail("Expected " + nameof(RequestEntityTooLargeException)); } catch (RequestEntityTooLargeException) { } } }
public async Task StreamToBytesAsyncNonSeekableAsync() { byte[] bytes = new byte[10]; this.random.NextBytes(bytes); TestNonSeekableStream stream = new TestNonSeekableStream(bytes, maxLengthToReturnPerRead: 3); { Memory <byte> actual = await BatchExecUtils.StreamToMemoryAsync(stream, cancellationToken : CancellationToken.None); Assert.IsTrue(actual.Span.SequenceEqual(bytes)); } }