summary refs log tree commit diff
path: root/src/ndisc
diff options
context:
space:
mode:
Diffstat (limited to 'src/ndisc')
-rw-r--r--src/ndisc/tests/test-ndisc-fake.c79
1 files changed, 41 insertions, 38 deletions
diff --git a/src/ndisc/tests/test-ndisc-fake.c b/src/ndisc/tests/test-ndisc-fake.c
index 91fe9802..b65511e0 100644
--- a/src/ndisc/tests/test-ndisc-fake.c
+++ b/src/ndisc/tests/test-ndisc-fake.c
@@ -47,44 +47,47 @@ match_gateway (const NMNDiscData *rdata, guint idx, const char *addr, guint32 ts
 	g_assert_cmpint (gw->preference, ==, pref);
 }
 
-static void
-match_address (const NMNDiscData *rdata, guint idx, const char *addr, guint32 ts, guint32 lt, guint32 preferred)
-{
-	const NMNDiscAddress *a;
-	char buf[INET6_ADDRSTRLEN];
-
-	g_assert (rdata);
-	g_assert_cmpint (idx, <, rdata->addresses_n);
-	g_assert (rdata->addresses);
-
-	a = &rdata->addresses[idx];
-
-	g_assert_cmpstr (inet_ntop (AF_INET6, &a->address, buf, sizeof (buf)), ==, addr);
-	g_assert_cmpint (a->timestamp, ==, ts);
-	g_assert_cmpint (a->lifetime, ==, lt);
-	g_assert_cmpint (a->preferred, ==, preferred);
-}
-
-static void
-match_route (const NMNDiscData *rdata, guint idx, const char *nw, int plen, const char *gw, guint32 ts, guint32 lt, NMIcmpv6RouterPref pref)
-{
-	const NMNDiscRoute *route;
-	char buf[INET6_ADDRSTRLEN];
-
-	g_assert (rdata);
-	g_assert_cmpint (idx, <, rdata->routes_n);
-	g_assert (rdata->routes);
-	g_assert (plen > 0 && plen <= 128);
-
-	route = &rdata->routes[idx];
-
-	g_assert_cmpstr (inet_ntop (AF_INET6, &route->network, buf, sizeof (buf)), ==, nw);
-	g_assert_cmpint ((int) route->plen, ==, plen);
-	g_assert_cmpstr (inet_ntop (AF_INET6, &route->gateway, buf, sizeof (buf)), ==, gw);
-	g_assert_cmpint (route->timestamp, ==, ts);
-	g_assert_cmpint (route->lifetime, ==, lt);
-	g_assert_cmpint (route->preference, ==, pref);
-}
+#define match_address(rdata, idx, addr, ts, lt, pref) \
+	G_STMT_START { \
+		const NMNDiscData *_rdata = (rdata); \
+		guint _idx = (idx); \
+		const NMNDiscAddress *_a; \
+		guint _ts = (ts); \
+		\
+		g_assert (_rdata); \
+		g_assert_cmpint (_idx, <, _rdata->addresses_n); \
+		g_assert (_rdata->addresses); \
+		\
+		_a = &_rdata->addresses[_idx]; \
+		\
+		nmtst_assert_ip6_address (&_a->address, (addr)); \
+		g_assert_cmpint (_a->timestamp, >=, _ts); \
+		g_assert_cmpint (_a->timestamp, <=, _ts + 1); \
+		g_assert_cmpint (_a->timestamp + _a->lifetime, ==, _ts + (lt)); \
+		g_assert_cmpint (_a->timestamp + _a->preferred, ==, _ts + (pref)); \
+	} G_STMT_END
+
+#define match_route(rdata, idx, nw, pl, gw, ts, lt, pref) \
+	G_STMT_START { \
+		const NMNDiscData *_rdata = (rdata); \
+		guint _idx = (idx); \
+		const NMNDiscRoute *_r; \
+		int _plen = (pl); \
+		\
+		g_assert (_rdata); \
+		g_assert_cmpint (_idx, <, _rdata->routes_n); \
+		g_assert (_rdata->routes); \
+		g_assert (_plen > 0 && _plen <= 128); \
+		\
+		_r = &_rdata->routes[idx]; \
+		\
+		nmtst_assert_ip6_address (&_r->network, (nw)); \
+		g_assert_cmpint ((int) _r->plen, ==, _plen); \
+		nmtst_assert_ip6_address (&_r->gateway, (gw)); \
+		g_assert_cmpint (_r->timestamp, ==, (ts)); \
+		g_assert_cmpint (_r->lifetime, ==, (lt)); \
+		g_assert_cmpint (_r->preference, ==, (pref)); \
+	} G_STMT_END
 
 static void
 match_dns_server (const NMNDiscData *rdata, guint idx, const char *addr, guint32 ts, guint32 lt)