mirror of
https://github.com/koreader/koreader.git
synced 2025-12-13 20:36:53 +01:00
72 lines
1.9 KiB
Makefile
72 lines
1.9 KiB
Makefile
# Run. {{{
|
|
|
|
PHONY += run run-prompt run-wbuilder
|
|
|
|
define run_script
|
|
for a in $(RARGS); do
|
|
[[ "$$a" = [-/]* ]] || a="$${PWD}/$$a";
|
|
set -- "$$@" "$$a";
|
|
done;
|
|
cd $(INSTALL_DIR)/koreader &&
|
|
while true; do
|
|
code=0;
|
|
$(RWRAP) ./luajit reader.lua "$$@" || code=$$?;
|
|
[ $${code} -eq 85 ] || exit $${code};
|
|
set --;
|
|
done
|
|
endef
|
|
|
|
run: all
|
|
$(strip $(run_script))
|
|
|
|
run-prompt: all
|
|
cd $(INSTALL_DIR)/koreader && $(RWRAP) ./luajit -i setupkoenv.lua
|
|
|
|
run-wbuilder: all
|
|
cd $(INSTALL_DIR)/koreader && EMULATE_READER_W=540 EMULATE_READER_H=720 $(RWRAP) ./luajit tools/wbuilder.lua
|
|
|
|
# }}}
|
|
|
|
# Testing & coverage. {{{
|
|
|
|
PHONY += coverage coverage-full coverage-run coverage-summary test test%
|
|
|
|
$(addprefix test,all base bench front): all test-data
|
|
$(RUNTESTS) $(INSTALL_DIR)/koreader $(@:test%=%) $T
|
|
|
|
test: testall
|
|
|
|
COVERAGE_STATS = luacov.stats.out
|
|
COVERAGE_REPORT = luacov.report.out
|
|
|
|
$(INSTALL_DIR)/koreader/.luacov:
|
|
$(SYMLINK) .luacov $@
|
|
|
|
coverage: coverage-summary
|
|
|
|
coverage-run: all test-data $(INSTALL_DIR)/koreader/.luacov
|
|
rm -f $(addprefix $(INSTALL_DIR)/koreader/,$(COVERAGE_STATS) $(COVERAGE_REPORT))
|
|
# Run tests.
|
|
$(RUNTESTS) $(INSTALL_DIR)/koreader front --coverage --tags=!nocov $T
|
|
# Aggregate statistics.
|
|
cd $(INSTALL_DIR)/koreader && \
|
|
eval "$$($(LUAROCKS_BINARY) path)" && \
|
|
test -r $(COVERAGE_STATS) || \
|
|
./luajit tools/merge_luacov_stats.lua $(COVERAGE_STATS) spec/run/*/$(COVERAGE_STATS)
|
|
# Generate report.
|
|
cd $(INSTALL_DIR)/koreader && \
|
|
eval "$$($(LUAROCKS_BINARY) path)" && \
|
|
./luajit -e 'r = require "luacov.runner"; r.run_report(r.configuration)' /dev/null
|
|
|
|
coverage-full: coverage-run
|
|
cd $(INSTALL_DIR)/koreader && cat luacov.report.out
|
|
|
|
coverage-summary: coverage-run
|
|
cd $(INSTALL_DIR)/koreader && tail -n \
|
|
+$$(($$(grep -nm1 -e "^Summary$$" luacov.report.out|cut -d: -f1)-1)) \
|
|
luacov.report.out
|
|
|
|
# }}}
|
|
|
|
# vim: foldmethod=marker foldlevel=0
|