unittest/unittest.mk

82 lines
3.1 KiB
Makefile

.ONESHELL:
SHELL = /usr/bin/bash
.SILENT:
COV3_CMD=venv/bin/coverage
PYT3_CMD=venv/bin/python
PDF_CMD=xdg-open
OUTDIR=testresults
TEXFILE=$(OUTDIR)/unittest.tex
PDFFILE=$(OUTDIR)/unittest.pdf
localhelp:
echo -e "Possible unittest options are:"
echo -e "\033[1;33m - [testrun]_full - Run all testcases and create pdf document, if not a testrun only\e[0m"
echo -e "\033[1;33m - [testrun]_short - Run most testcases and create pdf document, if not a testrun only\e[0m"
echo -e "\033[1;33m - [testrun]_smoke - Run some fast testcases and create pdf document, if not a testrun only\e[0m"
echo -e "\033[1;33m - [testrun]_full - Run a single testcases and create pdf document, if not a testrun only\e[0m"
echo " ----------------------------------------------------------------------------------------------------------------"
echo -e "\033[1;33m - view - Create a local documentation files and view them\e[0m"
echo -e "\033[1;33m - release - Release the testcases, creates a pdf ducument including all testcases and copy testdata to the module\e[0m"
head:
echo -ne "\n\n\033[1;34m"
echo -e "╔══════════╗"
echo -e "║ unittest ║"
echo -e "╚══════════╝\033[00m"
release: testrun_full coverage_analysis finalise compile publish status
full: testrun_full finalise compile status
short: testrun_short finalise compile status
smoke: testrun_smoke finalise compile status
single: testrun_single finalise compile status
localclean:
echo -e "\033[1;33mCleaning up unittest...\e[0m"
echo -e "\e[1m * Testresults from last testrun\e[0m"
ls testresults | xargs -i echo " testresults/{}"
ls testresults | xargs -i rm -f "testresults/{}"
echo -e "\e[1m * Collected coverage information\e[0m"
$(COV3_CMD) erase
release_testcases:
$(PYT3_CMD) src/unittest/scripts/unittest.py release_testcases
prepare:
$(PYT3_CMD) src/unittest/scripts/unittest.py prepare
testrun_full: head clean prepare
$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e full
testrun_short: head clean prepare
$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e short
testrun_smoke: head clean prepare
$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e smoke
testrun_single: head clean prepare
$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e single
coverage_analysis:
echo -e "\033[1;33mCreating Coverage-XML-File: $(pwd)/testresults/coverage.xml\e[0m"
$(COV3_CMD) xml -o testresults/coverage.xml
finalise: coverage_analysis
$(PYT3_CMD) src/unittest/scripts/unittest.py finalise
unittest.toc:
compile:
latexmk -pdf -quiet -pdflatex="pdflatex -interaction=nonstopmode" -output-directory=$(OUTDIR) -use-make $(TEXFILE) > /dev/null
status:
$(PYT3_CMD) src/unittest/scripts/unittest.py status
publish:
$(PYT3_CMD) src/unittest/scripts/unittest.py publish
view:
$(PDF_CMD) $(PDFFILE)