]> Sergey Matveev's repositories - zsh-autoenv.git/blobdiff - Makefile
tests: simplify ZDOTDIR setup, remove base
[zsh-autoenv.git] / Makefile
index b43d7097990801d24614fc827a80f1c7f958ac42..4b6c77edafd1a73fe1ae2b6c23a58f1211182b4f 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,27 +1,25 @@
-# Default, can be overridden using "make test ZDOTDIR=...".
-ZDOTDIR:=${CURDIR}/tests/ZDOTDIR
+# Empty by default, can be overridden using "make test ZDOTDIR=…".
+ZDOTDIR:=
+# Make it absolute.
+override ZDOTDIR:=$(abspath $(ZDOTDIR))
 
-# Export it, and make it absolute.
-override export ZDOTDIR:=$(abspath $(ZDOTDIR))
+TEST_SHELL:=zsh
 
 test:
-       cram --shell=zsh -v tests
+       ZDOTDIR=$(ZDOTDIR) cram --shell=$(TEST_SHELL) -v tests
 
 itest:
-       cram -i --shell=zsh tests
+       ZDOTDIR=$(ZDOTDIR) cram -i --shell=$(TEST_SHELL) tests
 
 # Run tests with all ZDOTDIRs.
 test_full:
-       for zsh in zsh /opt/zsh4/bin/zsh; do \
-               command -v $$zsh || { echo "Skipping non-existing shell: $$zsh"; continue; }; \
-               ret=0; \
-               for i in $(wildcard tests/ZDOTDIR*); do \
-                       echo "zsh=$zsh ZDOTDIR=$$i"; \
-                       SHELL=$$zsh ZDOTDIR=${CURDIR}/$$i cram --shell=zsh -v tests || ret=$$?; \
-                       echo; \
-               done; \
+       @ret=0; \
+       for i in $(wildcard tests/ZDOTDIR*); do \
+         echo "TEST_SHELL=$(TEST_SHELL) ZDOTDIR=$$i"; \
+         ZDOTDIR=${CURDIR}/$$i cram --shell=$(TEST_SHELL) -v tests || ret=$$?; \
+         echo; \
        done; \
-       return $$ret
+       exit $$ret
 
 # Define targets for test files, with relative and abolute path.
 # Use verbose output, which is useful with Vim's 'errorformat'.
@@ -30,7 +28,7 @@ TESTS:=$(wildcard tests/*.t)
 uniq = $(if $1,$(firstword $1) $(call uniq,$(filter-out $(firstword $1),$1)))
 _TESTS_REL_AND_ABS:=$(call uniq,$(abspath $(TESTS)) $(TESTS))
 $(_TESTS_REL_AND_ABS):
-       cram --shell=zsh -v $@
+       cram --shell=$(TEST_SHELL) -v $@
 .PHONY: $(_TESTS_REL_AND_ABS)
 
 .PHONY: itest test