resolved: tests for link_new(), link_process_rtnl()

This commit is contained in:
James Coglan
2024-07-22 13:17:08 +01:00
parent 9545512f3e
commit 83ca174b73
2 changed files with 56 additions and 0 deletions
+11
View File
@@ -182,6 +182,17 @@ executables += [
'sources' : files('test-dnssec-complex.c'),
'type' : 'manual',
},
test_template + {
'sources' : [
files('test-resolved-link.c'),
basic_dns_sources,
systemd_resolved_sources,
],
'dependencies' : [
systemd_resolved_dependencies,
],
'include_directories' : resolve_includes,
},
test_template + {
'sources' : [
files('test-resolved-stream.c'),
+45
View File
@@ -0,0 +1,45 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include "netlink-internal.h"
#include "resolved-link.h"
#include "resolved-manager.h"
#include "log.h"
#include "tests.h"
/* ================================================================
* link_new()
* ================================================================ */
TEST(link_new) {
Manager manager = {};
_cleanup_(link_freep) Link *link = NULL;
ASSERT_OK(link_new(&manager, &link, 1));
ASSERT_NOT_NULL(link);
}
/* ================================================================
* link_process_rtnl()
* ================================================================ */
TEST(link_process_rtnl) {
Manager manager = {};
_cleanup_(link_freep) Link *link = NULL;
_cleanup_(sd_netlink_unrefp) sd_netlink *nl = NULL;
_cleanup_(sd_netlink_message_unrefp) sd_netlink_message *msg = NULL;
ASSERT_OK(link_new(&manager, &link, 1));
ASSERT_NOT_NULL(link);
ASSERT_OK(netlink_open_family(&nl, AF_INET));
nl->protocol = NETLINK_ROUTE;
ASSERT_OK(sd_rtnl_message_new_link(nl, &msg, RTM_NEWLINK, 1));
ASSERT_NOT_NULL(msg);
message_seal(msg);
ASSERT_OK(link_process_rtnl(link, msg));
}
DEFINE_TEST_MAIN(LOG_DEBUG)