-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmakefile
58 lines (40 loc) · 963 Bytes
/
makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
.PHONY: clean test tox
NAME := hyperflask
VERSION := $(shell python setup.py --version)
VENV := venv
PYTHON := $(VENV)/bin/python
PIP := $(VENV)/bin/pip
PYTEST := $(VENV)/bin/py.test
PEP8 := $(VENV)/bin/pep8
TOX := $(VENV)/bin/tox
PYSRC := $(shell find {hyperflask,tests} -iname '*.py')
TARGET := $(PWD)/target
###############
# Boilerplate #
###############
default: test
clean:
rm -rf .tox htmlcov .coverage .eggs $(TARGET)
$(TARGET):
mkdir -p $(TARGET)
#test: $(PYTEST) $(PIP)
# $(PIP) install -U .
# $(PYTEST) tests
##############
# Virtualenv #
##############
$(VENV)/bin/%: $(PIP)
$(PIP) install $*
$(VENV)/bin/py.test: $(PIP)
$(PIP) install pytest pytest-cov pytest-xdist
$(PYTHON) $(PIP):
virtualenv -p python3 venv
$(PIP) install virtualenv
################
# Unit Testing #
################
test: $(VENV)/bin/py.test $(PYSRC) $(PIP)
$(PIP) install -U . sqlalchemy
$(VENV)/bin/py.test tests
tox: $(PYSRC) tox.ini $(TOX)
$(TOX)