public void TestRemainingDataRetrieval()
        {
            byte[] binaryData = new byte[9] {
                0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88
            };

            byte[] requestData = Encoding.ASCII.GetBytes("This is a test\r\n123456789");
            for (int index = 0; index < 9; ++index)
            {
                requestData[index + 16] = binaryData[index];
            }

            TestParser parser = new TestParser(128);

            parser.SetReceivedData(requestData, 0, requestData.Length);

            Assert.AreEqual("This is a test", parser.ParseLine());
            Assert.IsTrue(
                arraySegmentContentsAreEqual(
                    new ArraySegment <byte>(binaryData, 0, 9),
                    parser.GetRemainingData()
                    )
                );
        }
    public void TestRemainingDataRetrieval() {
      byte[] binaryData = new byte[9] {
        0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88
      };

      byte[] requestData = Encoding.ASCII.GetBytes("This is a test\r\n123456789");
      for(int index = 0; index < 9; ++index) {
        requestData[index + 16] = binaryData[index];
      }

      TestParser parser = new TestParser(128);
      parser.SetReceivedData(requestData, 0, requestData.Length);

      Assert.AreEqual("This is a test", parser.ParseLine());
      Assert.IsTrue(
        arraySegmentContentsAreEqual(
          new ArraySegment<byte>(binaryData, 0, 9),
          parser.GetRemainingData()
        )
      );
    }