24 lines
864 B
C
24 lines
864 B
C
|
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);
|
||
|
}
|