mirror of
https://github.com/zmkfirmware/zmk.git
synced 2026-03-19 20:45:18 -05:00
Create west test command to run zmk testsuite.
This commit is contained in:
committed by
Pete Johanson
parent
5d0532c6d9
commit
c067629c83
9
app/scripts/west-commands.yml
Normal file
9
app/scripts/west-commands.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2020, ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
west-commands:
|
||||
- file: scripts/west_commands/test.py
|
||||
commands:
|
||||
- name: test
|
||||
class: Test
|
||||
help: run zmk testsuite
|
||||
33
app/scripts/west_commands/test.py
Normal file
33
app/scripts/west_commands/test.py
Normal file
@@ -0,0 +1,33 @@
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
'''Test runner for ZMK.'''
|
||||
|
||||
import os
|
||||
from textwrap import dedent # just for nicer code indentation
|
||||
|
||||
from west.commands import WestCommand
|
||||
from west import log # use this for user output
|
||||
|
||||
|
||||
class Test(WestCommand):
|
||||
def __init__(self):
|
||||
super().__init__(
|
||||
'test', # gets stored as self.name
|
||||
'run zmk testsuite', # self.help
|
||||
# self.description:
|
||||
dedent('''Run the zmk testsuite.'''))
|
||||
|
||||
def do_add_parser(self, parser_adder):
|
||||
parser = parser_adder.add_parser(self.name,
|
||||
help=self.help,
|
||||
description=self.description)
|
||||
|
||||
parser.add_argument('test_path', default="all",
|
||||
help='The path to the test. Defaults to "all".', nargs="?")
|
||||
return parser # gets stored as self.parser
|
||||
|
||||
def do_run(self, args, unknown_args):
|
||||
# the run-test script assumes the app directory is the current dir.
|
||||
os.chdir(f'{self.topdir}/app')
|
||||
exit(os.system(f'{self.topdir}/app/run-test.sh {args.test_path}'))
|
||||
Reference in New Issue
Block a user