diff --git a/jq_test.c b/jq_test.c index 199a3bc4..f0f77f56 100644 --- a/jq_test.c +++ b/jq_test.c @@ -10,8 +10,16 @@ static void run_jq_tests(); int jq_testsuite(int argc, char* argv[]) { + FILE *testdata = stdin; jv_test(); - run_jq_tests(stdin); + if (argc > 2) { + testdata = fopen(argv[2], "re"); + if (!testdata) { + perror("fopen"); + exit(1); + } + } + run_jq_tests(testdata); return 0; } diff --git a/main.c b/main.c index 02399641..e7e4e093 100644 --- a/main.c +++ b/main.c @@ -130,7 +130,7 @@ int main(int argc, char* argv[]) { if (argc) progname = argv[0]; if (argc > 1 && !strcmp(argv[1], "--run-tests")) { - return jq_testsuite(argc - 1, argv + 1); + return jq_testsuite(argc, argv); } jq = jq_init();