From 4153ab54b5933fc315ad896e264f74571a494c90 Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Tue, 14 Jan 2014 11:15:03 +0800 Subject: [PATCH] test/parser: Add yaboot leftovers test Add a test to ensure that boot option parameters don't leak into later options. Signed-off-by: Jeremy Kerr --- test/parser/Makefile.am | 1 + test/parser/test-yaboot-leftovers.c | 35 +++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 test/parser/test-yaboot-leftovers.c diff --git a/test/parser/Makefile.am b/test/parser/Makefile.am index 8af4190..4c3cc69 100644 --- a/test/parser/Makefile.am +++ b/test/parser/Makefile.am @@ -51,6 +51,7 @@ TESTS = \ test-yaboot-root-override \ test-yaboot-device-override \ test-yaboot-global-state \ + test-yaboot-leftovers \ test-yaboot-default \ test-yaboot-rh8-ppc64 \ test-pxe-empty \ diff --git a/test/parser/test-yaboot-leftovers.c b/test/parser/test-yaboot-leftovers.c new file mode 100644 index 0000000..fc81284 --- /dev/null +++ b/test/parser/test-yaboot-leftovers.c @@ -0,0 +1,35 @@ +#include "parser-test.h" + +/* Test that an absent parameter in one boot option doesn't get set by a + * previous option */ + +#if 0 /* PARSER_EMBEDDED_CONFIG */ +image=/boot/vmlinux-1 + label=one + literal="console=XXXX" + +image=/boot/vmlinux-2 + label=two +#endif + +void run_test(struct parser_test *test) +{ + struct discover_boot_option *opt; + struct discover_context *ctx; + + test_read_conf_embedded(test, "/etc/yaboot.conf"); + + test_run_parser(test, "yaboot"); + + ctx = test->ctx; + + check_boot_option_count(ctx, 2); + + opt = get_boot_option(ctx, 0); + check_name(opt, "one"); + check_args(opt, "console=XXXX"); + + opt = get_boot_option(ctx, 1); + check_name(opt, "two"); + check_args(opt, ""); +} -- 2.39.2