public async Task Staging_packet_makes_it_available_in_receive()
        {
            using (var client = new FakeUdpClient())
            {
                var remote = FakeEndPoints.CreateRemote();
                client.StageReceivedPacket(remote, 1, 2, 3);
                var buffer = new byte[10];
                var result = await client.ReceiveAsync(buffer, 0, remote).ConfigureAwait(true);

                result.ReceivedBytes.Should().Be(3);
                result.RemoteEndPoint.Should().Be(remote);
                buffer.Take(3).Should().Equal(1, 2, 3);
            }
        }