[PATCH 5/7] test_fdt: Convert to use argparse
Simon Glass
sjg at chromium.org
Sun Jul 31 04:57:09 CEST 2022
Drop the deprecated OptionParser.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
tools/dtoc/test_fdt.py | 39 ++++++++++++++++++++-------------------
1 file changed, 20 insertions(+), 19 deletions(-)
diff --git a/tools/dtoc/test_fdt.py b/tools/dtoc/test_fdt.py
index e10fb528e81..c38158edf32 100755
--- a/tools/dtoc/test_fdt.py
+++ b/tools/dtoc/test_fdt.py
@@ -4,7 +4,7 @@
# Written by Simon Glass <sjg at chromium.org>
#
-from optparse import OptionParser
+from argparse import ArgumentParser
import glob
import os
import shutil
@@ -778,12 +778,11 @@ def run_test_coverage(build_dir):
['tools/patman/*.py', '*test_fdt.py'], build_dir)
-def run_tests(args, processes):
+def run_tests(names, processes):
"""Run all the test we have for the fdt model
Args:
- args (list or str): List of positional args provided. This can hold a
- test name to execute (as in 'test_fdt -t testFdt', for example)
+ names (list of str): List of test names provided. Only the first is used
processes (int): Number of processes to use (None means as many as there
are CPUs on the system. This must be set to 1 when running under
the python3-coverage tool
@@ -791,7 +790,7 @@ def run_tests(args, processes):
Returns:
int: Return code, 0 on success
"""
- test_name = args[0] if args else None
+ test_name = names[0] if names else None
result = test_util.run_test_suites(
'test_fdt', False, False, False, processes, test_name, None,
[TestFdt, TestNode, TestProp, TestFdtUtil])
@@ -801,23 +800,25 @@ def run_tests(args, processes):
def main():
"""Main program for this tool"""
- parser = OptionParser()
- parser.add_option('-B', '--build-dir', type='string', default='b',
- help='Directory containing the build output')
- parser.add_option('-P', '--processes', type=int,
- help='set number of processes to use for running tests')
- parser.add_option('-t', '--test', action='store_true', dest='test',
- default=False, help='run tests')
- parser.add_option('-T', '--test-coverage', action='store_true',
- default=False, help='run tests and check for 100% coverage')
- (options, args) = parser.parse_args()
+ parser = ArgumentParser()
+ parser.add_argument('-B', '--build-dir', type=str, default='b',
+ help='Directory containing the build output')
+ parser.add_argument('-P', '--processes', type=int,
+ help='set number of processes to use for running tests')
+ parser.add_argument('-t', '--test', action='store_true', dest='test',
+ default=False, help='run tests')
+ parser.add_argument('-T', '--test-coverage', action='store_true',
+ default=False,
+ help='run tests and check for 100% coverage')
+ parser.add_argument('name', nargs='*')
+ args = parser.parse_args()
# Run our meagre tests
- if options.test:
- ret_code = run_tests(args, options.processes)
+ if args.test:
+ ret_code = run_tests(args.name, args.processes)
return ret_code
- if options.test_coverage:
- run_test_coverage(options.build_dir)
+ if args.test_coverage:
+ run_test_coverage(args.build_dir)
return 0
if __name__ == '__main__':
--
2.37.1.455.g008518b4e5-goog
More information about the U-Boot
mailing list