cros_run_unit_tests: sanity check --packages
If you specify packages that don't have tests, the output is confusing:
we get `emerge --help` usage info. This is because we invoke emerge
without any packages.
BUG=chromium:996480
TEST=`cros_run_unit_tests --board betty --packages virtual/yacc` shows error msg
Change-Id: Ibf5145dcd598d5504f7f52cad377bd400c890c8a
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/1778716
Reviewed-by: Chris McDonald <cjmcdonald@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Commit-Queue: Mike Frysinger <vapier@chromium.org>
diff --git a/scripts/cros_run_unit_tests.py b/scripts/cros_run_unit_tests.py
index fcf892d..ff29b9d 100644
--- a/scripts/cros_run_unit_tests.py
+++ b/scripts/cros_run_unit_tests.py
@@ -115,9 +115,13 @@
logging.warning('The following packages do not have tests:\n %s',
'\n '.join(sorted(packages - pkg_with_test)))
+ if not pkg_with_test:
+ logging.error('No testable packages found!')
+ return 1
+
if opts.pretend:
print('\n'.join(sorted(pkg_with_test)))
- return
+ return 0
env = None
if opts.nowithdebug: