summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2016-08-01 14:03:33 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2016-08-02 11:32:03 +1000
commit681f967c8fb67d4af8de49a4298965ba61878384 (patch)
tree830a3dd2ba04ec83f99c3ed5cc290964f8bab6f7
parent13a88a762c5d0b1c9328529aeda3718cf4597766 (diff)
test: if a filter is specified, don't parallelize jobs by default
Likely testing a specific set of tests, possibly in gdb. So don't parallelize. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--test/litest.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/litest.c b/test/litest.c
index 5a8498f..902543d 100644
--- a/test/litest.c
+++ b/test/litest.c
@@ -3099,6 +3099,12 @@ litest_parse_argv(int argc, char **argv)
{ 0, 0, 0, 0}
};
+ enum {
+ JOBS_DEFAULT,
+ JOBS_SINGLE,
+ JOBS_CUSTOM
+ } want_jobs = JOBS_DEFAULT;
+
while(1) {
int c;
int option_index = 0;
@@ -3109,16 +3115,23 @@ litest_parse_argv(int argc, char **argv)
switch(c) {
case OPT_FILTER_TEST:
filter_test = optarg;
+ if (want_jobs == JOBS_DEFAULT)
+ want_jobs = JOBS_SINGLE;
break;
case OPT_FILTER_DEVICE:
filter_device = optarg;
+ if (want_jobs == JOBS_DEFAULT)
+ want_jobs = JOBS_SINGLE;
break;
case OPT_FILTER_GROUP:
filter_group = optarg;
+ if (want_jobs == JOBS_DEFAULT)
+ want_jobs = JOBS_SINGLE;
break;
case 'j':
case OPT_JOBS:
jobs = atoi(optarg);
+ want_jobs = JOBS_CUSTOM;
break;
case OPT_LIST:
return LITEST_MODE_LIST;
@@ -3131,6 +3144,9 @@ litest_parse_argv(int argc, char **argv)
}
}
+ if (want_jobs == JOBS_SINGLE)
+ jobs = 1;
+
return LITEST_MODE_TEST;
}