public void InputStreamSink_should_read_bytes_correctly_if_requested_by_input_stream_not_in_chunk_size()
{
this.AssertAllStagesStopped(() =>
{
var sinkProbe = CreateTestProbe();
var byteString2 = RandomByteString(3);
var inputStream = Source.From(new[] { _byteString, byteString2, null })
.RunWith(TestSink(sinkProbe), _materializer);
sinkProbe.ExpectMsgAllOf(GraphStageMessages.Push.Instance, GraphStageMessages.Push.Instance);
var result = ReadN(inputStream, 2);
result.Item1.Should().Be(2);
result.Item2.Should().BeEquivalentTo(_byteString.Take(2));
result = ReadN(inputStream, 2);
result.Item1.Should().Be(2);
result.Item2.Should().BeEquivalentTo(_byteString.Drop(2).Concat(byteString2.Take(1)));
result = ReadN(inputStream, 2);
result.Item1.Should().Be(2);
result.Item2.Should().BeEquivalentTo(byteString2.Drop(1));
inputStream.Close();
}, _materializer);
}