public void ReadsQueryReply()
        {
            var message = new byte[] { 1, 2, 3 };

            m_connector.ImplantMessage = (stream =>
            {
                // Write the reply after the message (with zero length body).
                stream.Position = ConverseClient.MessageHeaderLength;

                var writer = new ConverseWriter();
                writer.WriteReply(stream, message);

                stream.Position = 0;
            });

            var replyMemStream = new MemoryStream();

            m_client.SendQuery("foo", Array.Empty <byte>(), replyMemStream);

            Assert.ArraySegmentEqual(message, replyMemStream.GetBuffer());
            Assert.Equal(0, replyMemStream.Position);  // Check that the reply memory stream is rewound to the start.
        }