diff options
| -rw-r--r-- | meta/lib/oeqa/selftest/context.py | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/meta/lib/oeqa/selftest/context.py b/meta/lib/oeqa/selftest/context.py index 57844b289a..99186175e5 100644 --- a/meta/lib/oeqa/selftest/context.py +++ b/meta/lib/oeqa/selftest/context.py | |||
| @@ -194,8 +194,23 @@ class OESelftestTestContextExecutor(OETestContextExecutor): | |||
| 194 | parser.add_argument('-R', '--skip-tests', required=False, action='store', | 194 | parser.add_argument('-R', '--skip-tests', required=False, action='store', |
| 195 | nargs='+', dest="skips", default=None, | 195 | nargs='+', dest="skips", default=None, |
| 196 | help='Skip the tests specified. Format should be <module>[.<class>[.<test_method>]]') | 196 | help='Skip the tests specified. Format should be <module>[.<class>[.<test_method>]]') |
| 197 | |||
| 198 | def check_parallel_support(parameter): | ||
| 199 | if not parameter.isdigit(): | ||
| 200 | import argparse | ||
| 201 | raise argparse.ArgumentTypeError("argument -j/--num-processes: invalid int value: '%s' " % str(parameter)) | ||
| 202 | |||
| 203 | processes = int(parameter) | ||
| 204 | if processes: | ||
| 205 | try: | ||
| 206 | import testtools, subunit | ||
| 207 | except ImportError: | ||
| 208 | print("Failed to import testtools or subunit, the testcases will run serially") | ||
| 209 | processes = None | ||
| 210 | return processes | ||
| 211 | |||
| 197 | parser.add_argument('-j', '--num-processes', dest='processes', action='store', | 212 | parser.add_argument('-j', '--num-processes', dest='processes', action='store', |
| 198 | type=int, help="number of processes to execute in parallel with") | 213 | type=check_parallel_support, help="number of processes to execute in parallel with") |
| 199 | 214 | ||
| 200 | parser.add_argument('-t', '--select-tag', dest="select_tags", | 215 | parser.add_argument('-t', '--select-tag', dest="select_tags", |
| 201 | action='append', default=None, | 216 | action='append', default=None, |
