From fe7bfb4f2fa5b582be94409473130674b7d8687f Mon Sep 17 00:00:00 2001 From: Geoff Levand Date: Wed, 25 Mar 2009 12:35:59 +0000 Subject: Fixup parser test program Fixup the parser test program and helper script to work with the new multi-ui design. The expected-output files have not been updated. Signed-off-by: Geoff Levand Signed-off-by: Jeremy Kerr --- test/parser-test.c | 96 ++++++++++++++++++++++++------------------------------ 1 file changed, 43 insertions(+), 53 deletions(-) (limited to 'test/parser-test.c') diff --git a/test/parser-test.c b/test/parser-test.c index 8c94d3f..c88fc6c 100644 --- a/test/parser-test.c +++ b/test/parser-test.c @@ -1,85 +1,75 @@ #define _GNU_SOURCE -#include -#include #include -#include +#include +#include #include +#include -#include "parser.h" -#include "paths.h" - -void pb_log(const char *fmt, ...) -{ - va_list ap; - - va_start(ap, fmt); - vfprintf(stderr, fmt, ap); - va_end(ap); -} +#include +#include "pb-protocol/pb-protocol.h" +#include -int mount_device(const char *dev_path) -{ - printf("[mount] %s\n", dev_path); - return 0; -} +#include "discover/device-handler.h" +#include "discover/parser.h" +#include "discover/parser-utils.h" +#include "discover/paths.h" -static int device_idx; -static int option_idx; +static FILE *testf; -int add_device(const struct device *dev) +void device_add_boot_option(struct device *device, + struct boot_option *boot_option) { - printf("[dev %2d] id: %s\n", device_idx, dev->id); - printf("[dev %2d] name: %s\n", device_idx, dev->name); - printf("[dev %2d] description: %s\n", device_idx, dev->description); - printf("[dev %2d] boot_image: %s\n", device_idx, dev->icon_file); - - device_idx++; - option_idx = 0; - return 0; + fprintf(testf, "%s: %s\n", __func__, device->id); + fprintf(testf, " id '%s'\n", boot_option->id); + fprintf(testf, " name '%s'\n", boot_option->name); + fprintf(testf, " descr '%s'\n", boot_option->description); + fprintf(testf, " icon '%s'\n", boot_option->icon_file); + fprintf(testf, " image '%s'\n", boot_option->boot_image_file); + fprintf(testf, " initrd '%s'\n", boot_option->initrd_file); + fprintf(testf, " args '%s'\n", boot_option->boot_args); + fflush(testf); } - -int add_boot_option(const struct boot_option *opt) +const char *generic_icon_file( + enum generic_icon_type __attribute__((unused)) type) { - if (!device_idx) { - fprintf(stderr, "Option (%s) added before device\n", - opt->name); - exit(EXIT_FAILURE); - } - - printf("[opt %2d] name: %s\n", option_idx, opt->name); - printf("[opt %2d] description: %s\n", option_idx, opt->description); - printf("[opt %2d] boot_image: %s\n", option_idx, opt->boot_image_file); - printf("[opt %2d] initrd: %s\n", option_idx, opt->initrd_file); - printf("[opt %2d] boot_args: %s\n", option_idx, opt->boot_args); - - option_idx++; - - return 0; + return "tester.png"; } -enum generic_icon_type guess_device_type(void) +enum generic_icon_type guess_device_type( + struct discover_context __attribute__((unused)) *ctx) { return ICON_TYPE_UNKNOWN; } int main(int argc, char **argv) { - char *mountpoint, *dev; + struct discover_context *ctx; + int rc; if (argc != 3) { fprintf(stderr, "usage: %s \n", argv[0]); return EXIT_FAILURE; } - mountpoint = argv[1]; - dev = argv[2]; + /* Default to test on stdout, pb_log on stderr. */ + + testf = stdout; + + pb_log_set_stream(stderr); + pb_log_always_flush(1); + pb_log("--- parser-test ---\n"); + + ctx = talloc_zero(NULL, struct discover_context); - set_mount_base(mountpoint); + ctx->device_path = talloc_asprintf(ctx, "%s/%s", argv[1], argv[2]); + ctx->device = talloc_zero(ctx, struct device); + ctx->device->id = talloc_strdup(ctx->device, argv[2]); - iterate_parsers(dev, mountpoint); + rc = iterate_parsers(ctx); + pb_log("--- end ---\n"); return EXIT_SUCCESS; } -- cgit v1.2.1