New upstream version 18.02
[deb_dpdk.git] / test / test / autotest.py
1 #!/usr/bin/env python
2 # SPDX-License-Identifier: BSD-3-Clause
3 # Copyright(c) 2010-2014 Intel Corporation
4
5 # Script that uses either test app or qemu controlled by python-pexpect
6 from __future__ import print_function
7 import autotest_data
8 import autotest_runner
9 import sys
10
11
12 def usage():
13     print("Usage: autotest.py [test app|test iso image] ",
14           "[target] [whitelist|-blacklist]")
15
16 if len(sys.argv) < 3:
17     usage()
18     sys.exit(1)
19
20 target = sys.argv[2]
21
22 test_whitelist = None
23 test_blacklist = None
24
25 # get blacklist/whitelist
26 if len(sys.argv) > 3:
27     testlist = sys.argv[3].split(',')
28     testlist = [test.lower() for test in testlist]
29     if testlist[0].startswith('-'):
30         testlist[0] = testlist[0].lstrip('-')
31         test_blacklist = testlist
32     else:
33         test_whitelist = testlist
34
35 cmdline = "%s -c f -n 4" % (sys.argv[1])
36
37 print(cmdline)
38
39 runner = autotest_runner.AutotestRunner(cmdline, target, test_blacklist,
40                                         test_whitelist)
41
42 for test_group in autotest_data.parallel_test_group_list:
43     runner.add_parallel_test_group(test_group)
44
45 for test_group in autotest_data.non_parallel_test_group_list:
46     runner.add_non_parallel_test_group(test_group)
47
48 num_fails = runner.run_all_tests()
49
50 sys.exit(num_fails)