[bitbake-devel] [PATCH 2/4] bitbake-selftest: enable specifying tests to run on command line
Paul Eggleton
paul.eggleton at linux.intel.com
Mon Feb 24 18:50:03 UTC 2014
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
Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
bin/bitbake-selftest | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/bin/bitbake-selftest b/bin/bitbake-selftest
index 48a58fe..8c55f7b 100755
--- a/bin/bitbake-selftest
+++ b/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)
--
1.8.5.3
More information about the bitbake-devel
mailing list