summaryrefslogtreecommitdiff
path: root/tests/lib/cli/test_cli.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-06-28 09:48:33 -0400
committerGitHub <noreply@github.com>2017-06-28 09:48:33 -0400
commit1e84e9a697729e8e3847346c8046181f948f4350 (patch)
tree57240610b4008c7604912f8c913dc981da968737 /tests/lib/cli/test_cli.c
parent5ce1d8b118ae85765d135aaf06bf04a554607d12 (diff)
parent01aff72e26c51a36d34636b96434589bc621336c (diff)
Merge pull request #714 from opensourcerouting/cli_magic_defpy
CLI magic: part 1 (DEFPY)
Diffstat (limited to 'tests/lib/cli/test_cli.c')
-rw-r--r--tests/lib/cli/test_cli.c24
1 files changed, 22 insertions, 2 deletions
diff --git a/tests/lib/cli/test_cli.c b/tests/lib/cli/test_cli.c
index ba1218120c..2a68ba3826 100644
--- a/tests/lib/cli/test_cli.c
+++ b/tests/lib/cli/test_cli.c
@@ -21,21 +21,38 @@
#include <zebra.h>
+#include "prefix.h"
#include "common_cli.h"
DUMMY_DEFUN(cmd0, "arg ipv4 A.B.C.D");
DUMMY_DEFUN(cmd1, "arg ipv4m A.B.C.D/M");
-DUMMY_DEFUN(cmd2, "arg ipv6 X:X::X:X");
+DUMMY_DEFUN(cmd2, "arg ipv6 X:X::X:X$foo");
DUMMY_DEFUN(cmd3, "arg ipv6m X:X::X:X/M");
DUMMY_DEFUN(cmd4, "arg range (5-15)");
DUMMY_DEFUN(cmd5, "pat a < a|b>");
+DUMMY_DEFUN(cmd6, "pat b <a|b A.B.C.D$bar>");
DUMMY_DEFUN(cmd7, "pat c <a | b|c> A.B.C.D");
-DUMMY_DEFUN(cmd8, "pat d { foo A.B.C.D|bar X:X::X:X| baz }");
+DUMMY_DEFUN(cmd8, "pat d { foo A.B.C.D$foo|bar X:X::X:X$bar| baz } [final]");
DUMMY_DEFUN(cmd9, "pat e [ WORD ]");
DUMMY_DEFUN(cmd10, "pat f [key]");
DUMMY_DEFUN(cmd11, "alt a WORD");
DUMMY_DEFUN(cmd12, "alt a A.B.C.D");
DUMMY_DEFUN(cmd13, "alt a X:X::X:X");
+DUMMY_DEFUN(cmd14, "pat g { foo A.B.C.D$foo|foo|bar X:X::X:X$bar| baz } [final]");
+
+#include "tests/lib/cli/test_cli_clippy.c"
+
+DEFPY(magic_test, magic_test_cmd,
+ "magic (0-100) {ipv4net A.B.C.D/M|X:X::X:X$ipv6}",
+ "1\n2\n3\n4\n5\n")
+{
+ char buf[256];
+ vty_out(vty, "def: %s%s", self->string, VTY_NEWLINE);
+ vty_out(vty, "num: %ld%s", magic, VTY_NEWLINE);
+ vty_out(vty, "ipv4: %s%s", prefix2str(ipv4net, buf, sizeof(buf)), VTY_NEWLINE);
+ vty_out(vty, "ipv6: %s%s", inet_ntop(AF_INET6, &ipv6, buf, sizeof(buf)), VTY_NEWLINE);
+ return CMD_SUCCESS;
+}
void test_init(int argc, char **argv)
{
@@ -47,6 +64,7 @@ void test_init(int argc, char **argv)
install_element (ENABLE_NODE, &cmd3_cmd);
install_element (ENABLE_NODE, &cmd4_cmd);
install_element (ENABLE_NODE, &cmd5_cmd);
+ install_element (ENABLE_NODE, &cmd6_cmd);
install_element (ENABLE_NODE, &cmd7_cmd);
install_element (ENABLE_NODE, &cmd8_cmd);
install_element (ENABLE_NODE, &cmd9_cmd);
@@ -62,4 +80,6 @@ void test_init(int argc, char **argv)
uninstall_element (ENABLE_NODE, &cmd13_cmd);
install_element (ENABLE_NODE, &cmd13_cmd);
}
+ install_element (ENABLE_NODE, &cmd14_cmd);
+ install_element (ENABLE_NODE, &magic_test_cmd);
}