AM_CFLAGS = -O0 -ggdb -Wall -Wextra -Werror
TESTS = test-null \
+ test-grub2-single \
test-kboot-single \
test-yaboot-single \
test-yaboot-external
# objects under test
parser_test_objs = $(top_srcdir)/discover/yaboot-parser.c \
$(top_srcdir)/discover/kboot-parser.c \
+ $(top_srcdir)/discover/grub2-parser.c \
$(top_srcdir)/discover/resource.c \
$(top_srcdir)/discover/paths.c \
$(top_srcdir)/discover/device-handler.c \
--- /dev/null
+
+#include "parser-test.h"
+
+#if 0 /* PARSER_EMBEDDED_CONFIG */
+menuentry 'Linux' --class test-class $menuentry_id_option 'test-id' {
+ linux /vmlinux arg1=value1 arg2
+ initrd /initrd
+}
+#endif
+
+void run_test(struct parser_test *test)
+{
+ struct discover_boot_option *opt;
+ struct discover_context *ctx;
+
+ test_read_conf_embedded(test);
+ test_run_parser(test, "grub2");
+
+ ctx = test->ctx;
+
+ check_boot_option_count(ctx, 1);
+ opt = get_boot_option(ctx, 0);
+
+ check_name(opt, "Linux");
+ check_resolved_local_resource(opt->boot_image, ctx->device, "/vmlinux");
+ check_resolved_local_resource(opt->initrd, ctx->device, "/initrd");
+
+ check_args(opt, "arg1=value1 arg2");
+}