From 2f8be92de684f848d74655654f06b8a64bd13320 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 24 Feb 2014 18:50:03 +0000 Subject: bitbake: bitbake-selftest: enable specifying tests to run on command line If you are just trying to fix one test at a time, it can be useful to be able to specify an individual test(s) rather than running them all: bitbake-selftest bb.tests.codeparser bb.tests.cow You can even specify the test class or function to run, e.g.: bitbake-selftest bb.tests.fetch.URITest bitbake-selftest bb.tests.fetch.FetcherNetworkTest.test_fetch (Bitbake rev: 4df9c72663e972437131a848e6ddcf3769ae1d2b) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- bitbake/bin/bitbake-selftest | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'bitbake/bin/bitbake-selftest') diff --git a/bitbake/bin/bitbake-selftest b/bitbake/bin/bitbake-selftest index 48a58fef67..8c55f7ba15 100755 --- a/bitbake/bin/bitbake-selftest +++ b/bitbake/bin/bitbake-selftest @@ -25,13 +25,24 @@ try: except RuntimeError as exc: sys.exit(str(exc)) -tests = ["bb.tests.codeparser", - "bb.tests.cow", - "bb.tests.data", - "bb.tests.fetch", - "bb.tests.utils"] +def usage(): + print('usage: %s [testname1 [testname2]...]') + +if len(sys.argv) > 1: + if '--help' in sys.argv[1:]: + usage() + sys.exit(0) + + tests = sys.argv[1:] +else: + tests = ["bb.tests.codeparser", + "bb.tests.cow", + "bb.tests.data", + "bb.tests.fetch", + "bb.tests.utils"] for t in tests: + t = '.'.join(t.split('.')[:3]) __import__(t) unittest.main(argv=["bitbake-selftest"] + tests) -- cgit v1.2.3-54-g00ecf