defmodule TcpTest do use ExUnit.Case alias Modbus.Tcp #http://www.tahapaksu.com/crc/ #https://www.lammertbies.nl/comm/info/crc-calculation.html test "wrap test" do p 0, <<>>, <<0,0,0,0,0,0>> p 1, <<0>>, <<0,1,0,0,0,1,0>> p 2, <<0,1>>, <<0,2,0,0,0,2,0,1>> p 3, <<0,1,2>>, <<0,3,0,0,0,3,0,1,2>> p 4, <<0,1,2,3>>, <<0,4,0,0,0,4,0,1,2,3>> end defp p(transid, payload, packet) do assert packet == payload |> Tcp.wrap(transid) assert {payload, transid} == packet |> Tcp.unwrap end end