branch: scratch/editorconfig-cc
commit 2dbb8649227c34aa415c1b578839e284524bdca5
Author: 10sr <8slashes+...@gmail.com>
Commit: Stefan Monnier <monn...@iro.umontreal.ca>

    Update Makefile to run all tests including core
---
 Makefile | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 65 insertions(+)

diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000000..8f71fabeb7
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,65 @@
+# -*- Makefile -*-
+
+EMACS = emacs
+
+PROJECT_ROOT_DIR = $(PWD)
+ERT_TESTS = $(wildcard $(PROJECT_ROOT_DIR)/ert-tests/*.el)
+
+BATCHFLAGS = -batch -q --no-site-file -L $(PROJECT_ROOT_DIR)
+
+SRCS = editorconfig.el editorconfig-core.el editorconfig-core-handle.el \
+       editorconfig-fnmatch.el
+OBJS = $(SRCS:.el=.elc)
+
+$(OBJS): %.elc: %.el
+       $(EMACS) $(BATCHFLAGS) -f batch-byte-compile $^
+
+.PHONY: all clean test test-travis test-ert test-core test-metadata
+
+test: test-ert test-core test-metadata $(OBJS)
+       $(EMACS) $(BATCHFLAGS) -l editorconfig.el
+
+
+
+
+# ert test
+test-ert: $(ERT_TESTS) $(OBJS)
+       $(EMACS) $(BATCHFLAGS) \
+               --eval "(require 'ert) (setq debug-on-error t)" \
+               $(ERT_TESTS:%=-l "%") \
+               -f ert-run-tests-batch-and-exit
+
+
+
+# Core test
+core-test/CMakeLists.txt:
+       git submodule update --init
+
+test-core: core-test/CMakeLists.txt $(OBJS)
+       cd $(PROJECT_ROOT_DIR)/core-test && \
+               cmake 
-DEDITORCONFIG_CMD="$(PROJECT_ROOT_DIR)/bin/editorconfig-el" .
+       cd $(PROJECT_ROOT_DIR)/core-test && \
+               EMACS_BIN=$(EMACS) 
EDITORCONFIG_CORE_LIBRARY_PATH="$(PROJECT_ROOT_DIR)" \
+               ctest --output-on-failure .
+
+
+# Check package metadata
+
+ELISP_GET_FILE_PACKAGE_METADATA = \
+       (lambda (f) \
+               (with-temp-buffer \
+                       (insert-file-contents-literally f) \
+                       (package-buffer-info)))
+
+ELISP_PRINT_METADATA = \
+       (mapc \
+               (lambda (f) \
+                       (message \"Loading info: %s\" f) \
+                       (message \"%S\" (funcall 
$(ELISP_GET_FILE_PACKAGE_METADATA) f))) \
+               command-line-args-left)
+
+test-metadata: $(SRCS)
+       $(EMACS) -batch -Q \
+               --eval "(require 'package)" \
+               --eval "$(ELISP_PRINT_METADATA)" \
+               $^

Reply via email to