From 854e8468ea035b7d588ca7cc26a96f8f700541e7 Mon Sep 17 00:00:00 2001 From: Aineopintojen-harjoitustyo-Algoritmit-j Date: Sun, 18 Feb 2024 21:53:48 +0200 Subject: Improved developer commands menu. --- dev/commands.py | 66 +++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 48 insertions(+), 18 deletions(-) (limited to 'dev/commands.py') diff --git a/dev/commands.py b/dev/commands.py index ed9341a..ff94eb2 100644 --- a/dev/commands.py +++ b/dev/commands.py @@ -1,36 +1,66 @@ -import pytest -import pylint from subprocess import run +from sys import argv -def dev_pylint(): - return pylint.run_pylint(argv=["-v", "src/miinaharava"]) +usage = """ +Komentoja kehitykseen: + +poetry run dev + +Komennot: + pytest Ajaa yksikkötestit + pylint Tarkistaa koodin ulkoasun + coverage Tutkii haarakattavuuden + covhtml Tekee coverage haarakattavuusraportin HTML muodossa + covxml Tekee coverage haarakattavuusraportin XML muodossa + covff Tekee haarakattavuusraportin ja avaa sen firefoxilla + all Sama kuin + +""" + +def dev_command(): + if len(argv)==2: + match argv[1]: + case "pytest": + import pytest + return pytest.main(["-v"]) + case "pylint": + return run_pylint() + case "coverage": + return run_coverage() + case "covhtml": + return run_covhtml() + case "covxml": + return run_covxml() + case "covff": + return run_covff() + case "all": + if e := run_covff(): return e + return run_pylint() + print(usage) + return 0 -def dev_pytest(): - return pytest.main(["-v"]) +def run_pylint(): + import pylint + return pylint.run_pylint(argv=["-v", "src/miinaharava"]) -def dev_coverage(): +def run_coverage(): return run( "poetry run python3 -m coverage run --branch -m pytest -v ".split() ).returncode - -def dev_covhtml(): - if e := dev_coverage(): return e + +def run_covhtml(): + if e := run_coverage(): return e return run( "poetry run python3 -m coverage html".split() ).returncode -def dev_covxml(): - if e := dev_coverage(): return e +def run_covxml(): + if e := run_coverage(): return e return run( "poetry run python3 -m coverage xml".split() ).returncode -def dev_covff(): - if e := dev_covhtml(): return e +def run_covff(): + if e := run_covhtml(): return e return run( "firefox htmlcov/index.html".split() ).returncode - -def dev_all(): - if e := dev_covff(): return e - return dev_pylint() -- cgit v1.2.3