summaryrefslogtreecommitdiff
path: root/util/run_ects.py
diff options
context:
space:
mode:
Diffstat (limited to 'util/run_ects.py')
-rw-r--r--util/run_ects.py153
1 files changed, 76 insertions, 77 deletions
diff --git a/util/run_ects.py b/util/run_ects.py
index 9178328e5f..a3bf4d295c 100644
--- a/util/run_ects.py
+++ b/util/run_ects.py
@@ -1,10 +1,6 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Copyright 2017 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-#
-# Ignore indention messages, since legacy scripts use 2 spaces instead of 4.
-# pylint: disable=bad-indentation,docstring-section-indent
-# pylint: disable=docstring-trailing-quotes
"""Run all eCTS tests and publish results."""
@@ -16,81 +12,84 @@ import subprocess
import sys
# List of tests to run.
-TESTS = ['meta', 'gpio', 'hook', 'i2c', 'interrupt', 'mutex', 'task', 'timer']
+TESTS = ["meta", "gpio", "hook", "i2c", "interrupt", "mutex", "task", "timer"]
class CtsRunner(object):
- """Class running eCTS tests."""
-
- def __init__(self, ec_dir, dryrun):
- self.ec_dir = ec_dir
- self.cts_py = []
- if dryrun:
- self.cts_py += ['echo']
- self.cts_py += [os.path.join(ec_dir, 'cts/cts.py')]
-
- def run_cmd(self, cmd):
- try:
- rc = subprocess.call(cmd)
- if rc != 0:
- return False
- except OSError:
- return False
- return True
-
- def run_test(self, test):
- cmd = self.cts_py + ['-m', test]
- self.run_cmd(cmd)
-
- def run(self, tests):
- for test in tests:
- logging.info('Running', test, 'test.')
- self.run_test(test)
-
- def sync(self):
- logging.info('Syncing tree...')
- os.chdir(self.ec_dir)
- cmd = ['repo', 'sync', '.']
- return self.run_cmd(cmd)
-
- def upload(self):
- logging.info('Uploading results...')
+ """Class running eCTS tests."""
+
+ def __init__(self, ec_dir, dryrun):
+ self.ec_dir = ec_dir
+ self.cts_py = []
+ if dryrun:
+ self.cts_py += ["echo"]
+ self.cts_py += [os.path.join(ec_dir, "cts/cts.py")]
+
+ def run_cmd(self, cmd):
+ try:
+ rc = subprocess.call(cmd)
+ if rc != 0:
+ return False
+ except OSError:
+ return False
+ return True
+
+ def run_test(self, test):
+ cmd = self.cts_py + ["-m", test]
+ self.run_cmd(cmd)
+
+ def run(self, tests):
+ for test in tests:
+ logging.info("Running %s test.", test)
+ self.run_test(test)
+
+ def sync(self):
+ logging.info("Syncing tree...")
+ os.chdir(self.ec_dir)
+ cmd = ["repo", "sync", "."]
+ return self.run_cmd(cmd)
+
+ def upload(self):
+ logging.info("Uploading results...")
def main():
- if not os.path.exists('/etc/cros_chroot_version'):
- logging.error('This script has to run inside chroot.')
- sys.exit(-1)
-
- ec_dir = os.path.realpath(os.path.dirname(__file__) + '/..')
-
- parser = argparse.ArgumentParser(description='Run eCTS and report results.')
- parser.add_argument('-d',
- '--dryrun',
- action='store_true',
- help='Echo commands to be executed without running them.')
- parser.add_argument('-s',
- '--sync',
- action='store_true',
- help='Sync tree before running tests.')
- parser.add_argument('-u',
- '--upload',
- action='store_true',
- help='Upload test results.')
- args = parser.parse_args()
-
- runner = CtsRunner(ec_dir, args.dryrun)
-
- if args.sync:
- if not runner.sync():
- logging.error('Failed to sync.')
- sys.exit(-1)
-
- runner.run(TESTS)
-
- if args.upload:
- runner.upload()
-
-
-if __name__ == '__main__':
- main()
+ if not os.path.exists("/etc/cros_chroot_version"):
+ logging.error("This script has to run inside chroot.")
+ sys.exit(-1)
+
+ ec_dir = os.path.realpath(os.path.dirname(__file__) + "/..")
+
+ parser = argparse.ArgumentParser(description="Run eCTS and report results.")
+ parser.add_argument(
+ "-d",
+ "--dryrun",
+ action="store_true",
+ help="Echo commands to be executed without running them.",
+ )
+ parser.add_argument(
+ "-s",
+ "--sync",
+ action="store_true",
+ help="Sync tree before running tests.",
+ )
+ parser.add_argument(
+ "-u", "--upload", action="store_true", help="Upload test results."
+ )
+ args = parser.parse_args()
+
+ runner = CtsRunner(ec_dir, args.dryrun)
+
+ if args.sync:
+ if not runner.sync():
+ logging.error("Failed to sync.")
+ sys.exit(-1)
+
+ runner.run(TESTS)
+
+ if args.upload:
+ runner.upload()
+
+
+if __name__ == "__main__":
+ main()