This repository was archived by the owner on Sep 21, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
58 lines (44 loc) · 1.42 KB
/
Makefile
File metadata and controls
58 lines (44 loc) · 1.42 KB
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
PYTHON := python3
VENV ?= .venv
# autopep8 uses pycodestyle but doesn't automatically find files the same way :-/
REFORMAT := ensime_shared/ rplugin/
activate := $(VENV)/bin/activate
requirements := requirements.txt test-requirements.txt
deps := $(VENV)/deps-updated
features := test/features
test: unit integration
$(activate):
virtualenv -p $(PYTHON) $(VENV)
$(deps): $(activate) $(requirements)
$(VENV)/bin/pip install --upgrade --requirement requirements.txt
$(VENV)/bin/pip install --upgrade --requirement test-requirements.txt
touch $(deps)
unit: $(deps)
@echo "Running ensime-vim unit tests"
. $(activate) && py.test
integration: $(deps)
@echo "Running ensime-vim lettuce tests"
. $(activate) && aloe $(features)
coverage: $(deps)
. $(activate) && \
coverage erase && \
coverage run --module pytest && \
coverage run --append $$(which aloe) $(features) && \
coverage html && \
coverage report
@echo
@echo "Open htmlcov/index.html for an HTML report."
lint: $(deps)
. $(activate) && flake8 --statistics --count --show-source
format: $(deps)
. $(activate) && autopep8 -aaa --in-place -r $(REFORMAT)
clean:
@echo Cleaning build artifacts...
-find . -type f -name '*.py[c|o]' -delete
-find . -type d -name '__pycache__' -delete
. $(activate) && coverage erase
-$(RM) -r htmlcov
distclean: clean
@echo Cleaning the virtualenv...
-rm -rf $(VENV)
.PHONY: test unit integration coverage lint format clean distclean