anchor.diff:  open SocketIoSuave
   open SocketIoSuave.EngineIo.Protocol
   
  +let private testPacketToBinary message expected format =
  +    let expected = expected |> Seq.map(byte) |> Seq.toArray
  +    Expect.equal (message |> PacketMessage.encodeToBinary) expected format
  +
   let private testPacketToString message expected format =
  -    Expect.equal (message |> PacketMessage.encodeToString) expected ""
  +    Expect.equal (message |> PacketMessage.encodeToString) expected format
   
   let private testPayloadToString messages expected format =
       Expect.equal (Payload(messages) |> Payload.encodeToString) expected format
  +
  +let utf8 (s: string) = System.Text.Encoding.ASCII.GetBytes(s) |> Array.map int
  +let appendUtf8 s (arr: int seq) = Seq.concat [arr; utf8 s |> Seq.ofArray]
   
   [<Tests>]
   let tests =
  
positive.code:             testCase "single binary message" <| fun _ ->
                  testPayloadToString [Message(Binary([|1uy;2uy;3uy|] |> Segment.ofArray))] "6:b4AQID" "message"
          ]
      ]
  
  [<EntryPoint>]
  
negative.code:             testCase "noop" <| fun _ ->
                  testPacketToString (Noop) "6" "noop"
          ]
  
          testList "payload to string" [
              testCase "empty" <| fun _ ->
                  testPayloadToString [] "0:" "empty"
  