2023-02-06 10:34:23 +08:00
|
|
|
#include <gtest/gtest.h>
|
|
|
|
|
|
|
|
|
|
#include "utils.h"
|
|
|
|
|
|
2024-09-23 16:50:09 +08:00
|
|
|
TEST(UUID_ARRAY, FULL)
|
2023-02-06 10:34:23 +08:00
|
|
|
{
|
2024-09-23 16:50:09 +08:00
|
|
|
uuid_t uuid;
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000001", uuid);
|
|
|
|
|
|
|
|
|
|
struct uuid_array array;
|
|
|
|
|
uuid_array_init(&array);
|
|
|
|
|
EXPECT_TRUE(uuid_array_is_full(&array) == 0);
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < MAX_RULE_NUM; i++)
|
|
|
|
|
{
|
|
|
|
|
uuid_array_append(&array, uuid);
|
|
|
|
|
if (i == MAX_RULE_NUM - 1)
|
|
|
|
|
{
|
|
|
|
|
EXPECT_TRUE(uuid_array_is_full(&array) == 1);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
EXPECT_TRUE(uuid_array_is_full(&array) == 0);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
EXPECT_TRUE(uuid_array_is_full(&array) == 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TEST(UUID_ARRAY, COUNT)
|
|
|
|
|
{
|
|
|
|
|
uuid_t uuid;
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000001", uuid);
|
|
|
|
|
|
|
|
|
|
struct uuid_array array;
|
|
|
|
|
uuid_array_init(&array);
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == 0);
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < MAX_RULE_NUM; i++)
|
|
|
|
|
{
|
|
|
|
|
uuid_array_append(&array, uuid);
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == i + 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == MAX_RULE_NUM);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TEST(UUID_ARRAY, CONTAINS)
|
|
|
|
|
{
|
|
|
|
|
uuid_t uuid1;
|
|
|
|
|
uuid_t uuid2;
|
|
|
|
|
uuid_t uuid3;
|
|
|
|
|
uuid_t uuid4;
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000001", uuid1);
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000002", uuid2);
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000003", uuid3);
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000004", uuid4);
|
|
|
|
|
|
|
|
|
|
struct uuid_array array;
|
|
|
|
|
uuid_array_init(&array);
|
|
|
|
|
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid1) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid2) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid3) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid4) == 0);
|
|
|
|
|
|
|
|
|
|
uuid_array_append(&array, uuid1);
|
|
|
|
|
uuid_array_append(&array, uuid2);
|
|
|
|
|
uuid_array_append(&array, uuid3);
|
|
|
|
|
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid1) == 1);
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid2) == 1);
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid3) == 1);
|
|
|
|
|
EXPECT_TRUE(uuid_array_contains(&array, uuid4) == 0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TEST(UUID_ARRAY, REMOVE)
|
|
|
|
|
{
|
|
|
|
|
uuid_t uuid1;
|
|
|
|
|
uuid_t uuid2;
|
|
|
|
|
uuid_t uuid3;
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000001", uuid1);
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000002", uuid2);
|
|
|
|
|
uuid_parse("00000000-0000-0000-0000-000000000003", uuid3);
|
|
|
|
|
|
|
|
|
|
struct uuid_array array;
|
|
|
|
|
uuid_array_init(&array);
|
|
|
|
|
|
|
|
|
|
uuid_array_append(&array, uuid1);
|
|
|
|
|
uuid_array_append(&array, uuid2);
|
|
|
|
|
uuid_array_append(&array, uuid3);
|
|
|
|
|
uuid_array_append(&array, uuid1);
|
|
|
|
|
uuid_array_append(&array, uuid2);
|
|
|
|
|
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == 5);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 0), uuid1) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 1), uuid2) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 2), uuid3) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 3), uuid1) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 4), uuid2) == 0);
|
|
|
|
|
|
|
|
|
|
uuid_array_remove(&array, uuid3); // 1,2,1,2
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == 4);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 0), uuid1) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 1), uuid2) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 2), uuid1) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 3), uuid2) == 0);
|
|
|
|
|
|
|
|
|
|
uuid_array_remove(&array, uuid2); // 1,1
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == 2);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 0), uuid1) == 0);
|
|
|
|
|
EXPECT_TRUE(uuid_compare(*uuid_array_get_at(&array, 1), uuid1) == 0);
|
|
|
|
|
|
|
|
|
|
uuid_array_remove(&array, uuid1);
|
|
|
|
|
EXPECT_TRUE(uuid_array_get_count(&array) == 0);
|
2023-02-06 10:34:23 +08:00
|
|
|
}
|
|
|
|
|
|
2023-02-10 14:22:40 +08:00
|
|
|
TEST(UTILS, DEVICE)
|
|
|
|
|
{
|
|
|
|
|
const char *dev_name = "lo";
|
|
|
|
|
char ip_buff[16] = {0};
|
|
|
|
|
char mac_buff[32] = {0};
|
|
|
|
|
|
|
|
|
|
EXPECT_TRUE(get_ip_by_device_name(dev_name, ip_buff) == 0);
|
|
|
|
|
EXPECT_TRUE(get_mac_by_device_name(dev_name, mac_buff) == 0);
|
|
|
|
|
|
|
|
|
|
printf("Dev : %s, IP : %s\n", dev_name, ip_buff);
|
|
|
|
|
printf("Dev : %s, MAC : %s\n", dev_name, mac_buff);
|
|
|
|
|
|
|
|
|
|
EXPECT_STREQ(ip_buff, "127.0.0.1");
|
|
|
|
|
EXPECT_STREQ(mac_buff, "00:00:00:00:00:00");
|
|
|
|
|
}
|
|
|
|
|
|
2023-02-06 10:34:23 +08:00
|
|
|
int main(int argc, char **argv)
|
|
|
|
|
{
|
|
|
|
|
::testing::InitGoogleTest(&argc, argv);
|
|
|
|
|
return RUN_ALL_TESTS();
|
|
|
|
|
}
|