int main(int argc, char *argv[]) { int retcode = 0, keep_file = 0, opt, testcopy = 1; char genfilename[] = "essaiw.gdf1"; char reffilename[128]; while ((opt = getopt(argc, argv, "kc:")) != -1) { switch (opt) { case 'k': keep_file = 1; break; case 'c': testcopy = atoi(optarg); break; default: /* '?' */ fprintf(stderr, "Usage: %s [-k]\n", argv[0]); exit(EXIT_FAILURE); } } fprintf(stderr, "\tVersion : %s\n", xdf_get_string()); // Create the filename for the reference snprintf(reffilename, sizeof(reffilename), "%s/ref%u-%u-%u-%u-%u-%u-%u.gdf1", getenv("srcdir"),SAMPLINGRATE, DURATION, NITERATION, RAMP_NS, NEEG, NEXG, NTRI); // Test generation of a file unlink(genfilename); retcode = generate_xdffile(genfilename); if (!retcode) retcode = cmp_files(genfilename, reffilename, 1, offskip, NULL); // Test copy a file (implied reading) if (!retcode && testcopy) { unlink(genfilename); retcode = copy_xdf(genfilename, reffilename, XDF_GDF1); if (!retcode) retcode = cmp_files(genfilename, reffilename, 0, NULL, NULL); } if (!retcode) retcode = test_validation_param(XDF_GDF1, numtype, supported_type); if (!keep_file) unlink(genfilename); return retcode ? EXIT_FAILURE : EXIT_SUCCESS; }
/* Main entry point for cmd, accepts an array of arguments */ int cmd_cmp(char **argv) { int rc; unsigned int argc; int c, opt_ind; argc = cli_count_args(argv); for (c = 0, optind = 0, opt_ind = 0; c != -1;) { c = getopt_long(argc, argv, "hv", long_options, &opt_ind); switch (c) { case 'h': help_cmd_cmp(HELP_LONG); return CMD_SUCCESS; case 'v': printf("%s\n", CMP_VERSION); return CMD_SUCCESS; } } if (argc - optind != 2) { printf("%s - incorrect number of arguments. Try `%s --help'\n", cmdname, cmdname); return CMD_FAILURE; } rc = cmp_files(argv[optind], argv[optind + 1]); if (rc) return CMD_FAILURE; else return CMD_SUCCESS; }