pi1541/tests/net-arp.h

24 lines
864 B
C
Raw Normal View History

void TestNetArpPacket()
{
using namespace Net::Arp;
constexpr auto size = Packet::SerializedLength();
auto packet = Packet(ARP_OPERATION_REQUEST);
uint8_t buffer[size];
packet.Serialize(buffer, sizeof(buffer));
Packet deserialized;
deserialized.Deserialize(buffer, sizeof(buffer));
TEST_CHECK(packet.hardwareType == deserialized.hardwareType);
TEST_CHECK(packet.protocolType == deserialized.protocolType);
TEST_CHECK(packet.hardwareAddressLength == deserialized.hardwareAddressLength);
TEST_CHECK(packet.protocolAddressLength == deserialized.protocolAddressLength);
TEST_CHECK(packet.operation == deserialized.operation);
TEST_CHECK(packet.senderMac == deserialized.senderMac);
TEST_CHECK(packet.senderIp == deserialized.senderIp);
TEST_CHECK(packet.targetMac == deserialized.targetMac);
TEST_CHECK(packet.targetIp == deserialized.targetIp);
}