44 lines
1.1 KiB
C++
44 lines
1.1 KiB
C++
#include <gtest/gtest.h>
|
|
|
|
#include "packet_helper.h"
|
|
|
|
/*
|
|
* Virtual eXtensible Local Area Network
|
|
* Flags: 0x0800, VXLAN Network ID (VNI)
|
|
* 0... .... .... .... = GBP Extension: Not defined
|
|
* .... 1... .... .... = VXLAN Network ID (VNI): True
|
|
* .... .... .0.. .... = Don't Learn: False
|
|
* .... .... .... 0... = Policy Applied: False
|
|
* .000 .000 0.00 .000 = Reserved(R): 0x0000
|
|
* Group Policy ID: 0
|
|
* VXLAN Network Identifier (VNI): 461829
|
|
* Reserved: 0
|
|
*/
|
|
|
|
unsigned char data[] = {
|
|
0x08, 0x00, 0x00, 0x00, 0x07, 0x0c, 0x05, 0x00};
|
|
|
|
TEST(VXLAN_UTILS, GET)
|
|
{
|
|
const struct vxlan_hdr *hdr = (struct vxlan_hdr *)data;
|
|
|
|
EXPECT_TRUE(vxlan_hdr_get_flags(hdr) == 0x08);
|
|
EXPECT_TRUE(vxlan_hdr_get_vni(hdr) == 461829);
|
|
}
|
|
|
|
TEST(VXLAN_UTILS, SET)
|
|
{
|
|
char buff[8] = {0};
|
|
struct vxlan_hdr *hdr = (struct vxlan_hdr *)buff;
|
|
|
|
vxlan_hdr_set_flags(hdr, 0x08);
|
|
vxlan_hdr_set_vni(hdr, 461829);
|
|
EXPECT_TRUE(memcmp(buff, data, 8) == 0);
|
|
}
|
|
|
|
int main(int argc, char **argv)
|
|
{
|
|
::testing::InitGoogleTest(&argc, argv);
|
|
return RUN_ALL_TESTS();
|
|
}
|