pytest.py 761 B

123456789101112131415161718
  1. """QMK Python Unit Tests
  2. QMK script to run unit and integration tests against our python code.
  3. """
  4. from subprocess import DEVNULL
  5. from milc import cli
  6. @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")
  7. @cli.subcommand('QMK Python Unit Tests', hidden=False if cli.config.user.developer else True)
  8. def pytest(cli):
  9. """Run several linting/testing commands.
  10. """
  11. nose2 = cli.run(['nose2', '-v', '-t', 'lib/python', *cli.args.test], capture_output=False, stdin=DEVNULL)
  12. flake8 = cli.run(['flake8', 'lib/python'], capture_output=False, stdin=DEVNULL)
  13. return flake8.returncode | nose2.returncode