public async Task Should_Read_Stream_Normally_If_Data_Gets_By_Parts(byte[] inputBytes)
        {
            //Arrange
            var stream = new EmulateNetworkBehaviorStream();

            _ = Task.Run(async() =>
            {
                foreach (var inputByte in inputBytes)
                {
                    await stream.WriteAsync(new[] { inputByte }, CancellationToken.None).ConfigureAwait(false);
                    await stream.FlushAsync(CancellationToken.None).ConfigureAwait(false);
                    await Task.Delay(TimeSpan.FromMilliseconds(200)).ConfigureAwait(false);
                }
            });


            //Act
            var result = await stream.ReadPacketAsync(inputBytes.Length, CancellationToken.None).ConfigureAwait(false);

            //Assert
            Assert.Equal(inputBytes, result);
        }