aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/cli_commands.md17
-rw-r--r--lib/python/qmk/cli/pytest.py3
2 files changed, 18 insertions, 2 deletions
diff --git a/docs/cli_commands.md b/docs/cli_commands.md
index 520da06c4..01241b00d 100644
--- a/docs/cli_commands.md
+++ b/docs/cli_commands.md
@@ -481,5 +481,20 @@ This command runs the python test suite. If you make changes to python code you
481**Usage**: 481**Usage**:
482 482
483``` 483```
484qmk pytest 484qmk pytest [-t TEST]
485``` 485```
486
487**Examples**:
488
489Run entire test suite:
490
491 qmk pytest
492
493Run test group:
494
495 qmk pytest -t qmk.tests.test_cli_commands
496
497Run single test:
498
499 qmk pytest -t qmk.tests.test_cli_commands.test_c2json
500 qmk pytest -t qmk.tests.test_qmk_path
diff --git a/lib/python/qmk/cli/pytest.py b/lib/python/qmk/cli/pytest.py
index a7f01a872..2e4a0a9f0 100644
--- a/lib/python/qmk/cli/pytest.py
+++ b/lib/python/qmk/cli/pytest.py
@@ -7,11 +7,12 @@ from subprocess import DEVNULL
7from milc import cli 7from milc import cli
8 8
9 9
10@cli.argument('-t', '--test', arg_only=True, action='append', default=[], help="Mapped to nose2 'testNames' positional argument - https://docs.nose2.io/en/latest/usage.html#specifying-tests-to-run")
10@cli.subcommand('QMK Python Unit Tests', hidden=False if cli.config.user.developer else True) 11@cli.subcommand('QMK Python Unit Tests', hidden=False if cli.config.user.developer else True)
11def pytest(cli): 12def pytest(cli):
12 """Run several linting/testing commands. 13 """Run several linting/testing commands.
13 """ 14 """
14 nose2 = cli.run(['nose2', '-v'], capture_output=False, stdin=DEVNULL) 15 nose2 = cli.run(['nose2', '-v', '-t' 'lib/python', *cli.args.test], capture_output=False, stdin=DEVNULL)
15 flake8 = cli.run(['flake8', 'lib/python'], capture_output=False, stdin=DEVNULL) 16 flake8 = cli.run(['flake8', 'lib/python'], capture_output=False, stdin=DEVNULL)
16 17
17 return flake8.returncode | nose2.returncode 18 return flake8.returncode | nose2.returncode