summaryrefslogtreecommitdiffstats
path: root/test/parser/test-pxe-ipxe.c
blob: e3bc20288f9d8bcbc3da08883cf380ccad644569 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40


#include "parser-test.h"

#if 0 /* PARSER_EMBEDDED_CONFIG */
#!ipxe
kernel vmlinux append kernel args
initrd initrd
#endif

/**
 * Test that we recognise an ipxe-formatted script obtained from bootfile_url
 * (DHCPv6 option 59) that some vendors use.
 */

void run_test(struct parser_test *test)
{
	struct discover_boot_option *opt;
	struct discover_context *ctx;

	test_read_conf_embedded_url(test, "tftp://host/dir1/conf");

	test_set_event_source(test);
	test_set_event_param(test->ctx->event, "bootfile_url", "tftp://host/dir1/conf");

	test_run_parser(test, "pxe");

	ctx = test->ctx;

	check_boot_option_count(ctx, 1);
	opt = get_boot_option(ctx, 0);

	check_name(opt, "ipxe option (tftp://host/dir1/vmlinux)");

	check_resolved_url_resource(opt->boot_image,
			"tftp://host/dir1/vmlinux");
	check_resolved_url_resource(opt->initrd,
			"tftp://host/dir1/initrd");
	check_args(opt, "append kernel args");
}
OpenPOWER on IntegriCloud