summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2018-09-14 10:23:42 +0000
committerclaudio <claudio@openbsd.org>2018-09-14 10:23:42 +0000
commit8b4987786d614fa8d12c76d46185d9617c856d37 (patch)
tree023cb21cf0f634af8ce452513822c5cfc50c4a10
parentAdjust the dummy as_set_match function to new prototype after last bgpd commit (diff)
downloadwireguard-openbsd-8b4987786d614fa8d12c76d46185d9617c856d37.tar.xz
wireguard-openbsd-8b4987786d614fa8d12c76d46185d9617c856d37.zip
Adjust and extend unit test for as_set after last bgpd commit
OK benno@
-rw-r--r--regress/usr.sbin/bgpd/unittests/rde_sets_test.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/regress/usr.sbin/bgpd/unittests/rde_sets_test.c b/regress/usr.sbin/bgpd/unittests/rde_sets_test.c
index 57e0abfa935..0535723d25f 100644
--- a/regress/usr.sbin/bgpd/unittests/rde_sets_test.c
+++ b/regress/usr.sbin/bgpd/unittests/rde_sets_test.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rde_sets_test.c,v 1.2 2018/09/07 09:31:14 claudio Exp $ */
+/* $OpenBSD: rde_sets_test.c,v 1.3 2018/09/14 10:23:42 claudio Exp $ */
/*
* Copyright (c) 2018 Claudio Jeker <claudio@openbsd.org>
@@ -33,7 +33,7 @@ build_set(const char *name, u_int32_t *mem, size_t nmemb, size_t initial)
{
struct as_set *a;
- a = as_set_new(name, initial);
+ a = as_set_new(name, initial, sizeof(*mem));
if (a == NULL)
err(1, "as_set_new %s", name);
if (as_set_add(a, mem, nmemb) != 0)
@@ -46,18 +46,18 @@ build_set(const char *name, u_int32_t *mem, size_t nmemb, size_t initial)
int
main(int argc, char **argv)
{
- struct as_set *a, *aa, *b, *c;
+ struct as_set *a, *aa, *b, *c, *empty;
size_t i;
a = build_set("a", va, sizeof(va) / sizeof(va[0]),
sizeof(va) / sizeof(va[0]));
-
aa = build_set("aa", vaa, sizeof(vaa) / sizeof(vaa[0]), 0);
-
b = build_set("b", vb, sizeof(vb) / sizeof(vb[0]), 1);
-
c = build_set("c", vc, sizeof(vc) / sizeof(vc[0]), 1);
+ empty = build_set("empty", NULL, 0, 0);
+ if (!as_set_equal(a, a))
+ errx(1, "as_set_equal(a, a) non equal");
if (!as_set_equal(a, aa))
errx(1, "as_set_equal(a, aa) non equal");
if (as_set_equal(a, b))
@@ -75,6 +75,17 @@ main(int argc, char **argv)
if (as_set_match(c, 7))
errx(1, "as_set_match(c, %u) matched but should not", 7);
+ if (!as_set_equal(empty, empty))
+ errx(1, "as_set_equal(empty, empty) non equal");
+ if (as_set_match(empty, 42))
+ errx(1, "as_set_match(empty, %u) matched but should not", 42);
+
+ as_set_free(a);
+ as_set_free(aa);
+ as_set_free(b);
+ as_set_free(c);
+ as_set_free(empty);
+
printf("OK\n");
return 0;
}