]> git.puffer.fish Git - mirror/frr.git/commitdiff
tests/lib: add a simple prefix list query tool
authorDavid Lamparter <equinox@opensourcerouting.org>
Tue, 20 Apr 2021 03:37:33 +0000 (05:37 +0200)
committerMartin Winter <mwinter@opensourcerouting.org>
Mon, 5 Jul 2021 23:44:35 +0000 (01:44 +0200)
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
tests/.gitignore
tests/lib/test_plist.c [new file with mode: 0644]
tests/subdir.am

index 3fad1b081320e3f96e87394a7d87a4783496c6b3..498d7dd0b7810a1b7185c82d0e03504b74dbd866 100644 (file)
@@ -36,6 +36,7 @@
 /lib/test_nexthop
 /lib/test_nexthop_iter
 /lib/test_ntop
+/lib/test_plist
 /lib/test_prefix2str
 /lib/test_printfrr
 /lib/test_privs
diff --git a/tests/lib/test_plist.c b/tests/lib/test_plist.c
new file mode 100644 (file)
index 0000000..ee7a9eb
--- /dev/null
@@ -0,0 +1,48 @@
+/*
+ * Simple prefix list querying tool
+ *
+ * Copyright (C) 2021 by David Lamparter,
+ *                   for Open Source Routing / NetDEF, Inc.
+ *
+ * Quagga is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * Quagga is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; see the file COPYING; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include <zebra.h>
+
+#include "lib/plist.h"
+#include "lib/filter.h"
+#include "tests/lib/cli/common_cli.h"
+
+static const struct frr_yang_module_info *const my_yang_modules[] = {
+       &frr_filter_info,
+       NULL,
+};
+
+__attribute__((_CONSTRUCTOR(2000)))
+static void test_yang_modules_set(void)
+{
+       test_yang_modules = my_yang_modules;
+}
+
+void test_init(int argc, char **argv)
+{
+       prefix_list_init();
+       filter_cli_init();
+
+       /* nothing else to do here, giving stand-alone access to the prefix
+        * list code's "debug prefix-list ..." command is the only purpose of
+        * this "test".
+        */
+}
index c2153140f5403e2c3db29518599de7f0066ba64c..86c1aa42842db8ad28f537814370b063bab1b1ac 100644 (file)
@@ -87,6 +87,7 @@ check_PROGRAMS = \
        tests/lib/test_nexthop_iter \
        tests/lib/test_nexthop \
        tests/lib/test_ntop \
+       tests/lib/test_plist \
        tests/lib/test_prefix2str \
        tests/lib/test_printfrr \
        tests/lib/test_privs \
@@ -344,6 +345,10 @@ tests_lib_test_ntop_CFLAGS = $(TESTS_CFLAGS)
 tests_lib_test_ntop_CPPFLAGS = $(CPPFLAGS_BASE) # no assert override
 tests_lib_test_ntop_LDADD = # none
 tests_lib_test_ntop_SOURCES = tests/lib/test_ntop.c tests/helpers/c/prng.c
+tests_lib_test_plist_CFLAGS = $(TESTS_CFLAGS)
+tests_lib_test_plist_CPPFLAGS = $(TESTS_CPPFLAGS)
+tests_lib_test_plist_LDADD = $(ALL_TESTS_LDADD)
+tests_lib_test_plist_SOURCES = tests/lib/test_plist.c tests/lib/cli/common_cli.c
 tests_lib_test_prefix2str_CFLAGS = $(TESTS_CFLAGS)
 tests_lib_test_prefix2str_CPPFLAGS = $(TESTS_CPPFLAGS)
 tests_lib_test_prefix2str_LDADD = $(ALL_TESTS_LDADD)