#include <sys/stat.h>
#include <dirent.h>
-bool opts_memchk = false;
-bool opts_debug = false;
+cmd_options opts;
+
char *task_bins[] = {
"./gmqcc",
"./qcvm"
* Generate a task from thin air if it requires execution in
* the QCVM.
*/
- if (!strcmp(task_tasks[i].template->proceduretype, "-execute"))
- execute = true;
+ execute = !!(!strcmp(task_tasks[i].template->proceduretype, "-execute"));
/*
* We assume it compiled before we actually compiled :). On error
fflush(task_tasks[i].stdoutlog);
}
- if (!execute) {
+ if (!task_tasks[i].compiled) {
con_err("test failure: `%s` [%s] (failed to compile) see %s.stdout and %s.stderr\n",
task_tasks[i].template->description,
(task_tasks[i].template->failuremessage) ?
);
continue;
}
+
+ if (!execute) {
+ con_out("test succeeded: `%s` [%s]\n",
+ task_tasks[i].template->description,
+ (task_tasks[i].template->successmessage) ?
+ task_tasks[i].template->successmessage : "unknown"
+ );
+ continue;
+ }
+
/*
* If we made it here that concludes the task is to be executed
* in the virtual machine.
con_change(redirout, redirerr);
if (!strcmp(argv[0]+1, "debug")) {
- opts_debug = true;
+ opts.debug = true;
continue;
}
if (!strcmp(argv[0]+1, "memchk")) {
- opts_memchk = true;
+ opts.memchk = true;
continue;
}
if (!strcmp(argv[0]+1, "nocolor")) {