123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- COV2_CMD=venv2/bin/coverage
- COV3_CMD=venv3/bin/coverage
- PYT2_CMD=venv2/bin/python
- PYT3_CMD=venv3/bin/python
- PDF_CMD=xdg-open
-
- OUTDIR=testresults
- TEXFILE=$(OUTDIR)/unittest.tex
- PDFFILE=$(OUTDIR)/unittest.pdf
-
- .PHONY: all help release full short smoke single testrun_full testrun_short testrun_smoke testrun_single coverage_analysis finalise status compile release_testcases publish view clean
-
- all: full
-
- help:
- @echo "make [target]"
- @echo " Here is a list of the most helpfull targets:"
- @echo " - release: Release the testcases, creates a pdf ducument including all testcases and copy testdata to the module"
- @echo " ----------------------------------------------------------------------------------------------------------------"
- @echo " - full: Create a pdf ducument including all testcases"
- @echo " - short: Create a pdf ducument including most testcases"
- @echo " - smoke: Create a pdf ducument including some testcases"
- @echo " - single: Create a pdf ducument including one testcases"
- @echo " ----------------------------------------------------------------------------------------------------------------"
- @echo " - testrun_full: Run all testcases"
- @echo " - testrun_short: Run most testcases"
- @echo " - testrun_smoke: Run some testcases"
- @echo " - testrun_single: Run one testcases"
-
- 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
-
- venv:
- @[[ -d venv2 ]] || make venv2
- @[[ -d venv3 ]] || make venv3
-
- venv2:
- virtualenv -p /usr/bin/python2 venv2
- venv2/bin/pip install --upgrade pip
- venv2/bin/pip install -r requirements.txt
- venv3:
- virtualenv -p /usr/bin/python3 venv3
- venv3/bin/pip install --upgrade pip
- venv3/bin/pip install -r requirements.txt
-
- clean: venv
- @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
-
- cleanall: clean
- @echo -e "\e[1m * Virtualenv\e[0m"
- @rm -rf venv?
-
- release_testcases:
- @$(PYT3_CMD) src/unittest/scripts/unittest.py release_testcases
-
- prepare: venv
- @$(PYT3_CMD) src/unittest/scripts/unittest.py prepare
-
- testrun_full: clean prepare
- @$(COV2_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e full
- @$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e full
-
- testrun_short: clean prepare
- @$(COV2_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e short
- @$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e short
-
- testrun_smoke: clean prepare
- @$(COV2_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e smoke
- @$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e smoke
-
- testrun_single: clean prepare
- @$(COV2_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e single
- @$(COV3_CMD) run -a --branch --source=`$(PYT3_CMD) src/config.py -p` src/unittest/scripts/unittest.py testrun -e single
-
- coverage_analysis:
- @echo "\e[1m\e[93mCreating 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
-
- 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)
|