jotdown/tests/html-ref/Makefile

41 lines
1,005 B
Makefile
Raw Permalink Normal View History

.POSIX:
TEST_DJ=$(shell find . -name '*.dj' | sort)
TEST=${TEST_DJ:.dj=}
DJOT_JS=../../modules/djot.js
DJOT_JS_SRC=$(shell find ${DJOT_JS}/src -name '.ts')
ref.rs: ${TEST_DJ} html
echo "use crate::compare;" > $@
for name in ${TEST}; do \
name_snake=$$(basename -a $$name); \
skip_reason=$$(grep -E "^$${name_snake}:" skip | cut -d: -f2); \
[ -n "$$skip_reason" ] && echo "#[ignore = \"$${skip_reason}\"]"; \
echo "#[test]"; \
echo "fn $$name_snake() {"; \
printf ' let src = r###"'; \
cat $$name.dj; \
echo '"###;'; \
printf ' let expected = "%s";' "$$name.html"; \
echo " compare!(src, expected);"; \
echo "}"; \
done >> $@
html: djot-js ${TEST_DJ}
echo ${TEST}
for name in ${TEST}; do cat $$name.dj | ./djot-js > $$name.html; done
touch $@
djot-js: ${DJOT_JS_SRC}
(cd "${DJOT_JS}" && npm install && npm run build)
echo "#!/bin/sh" > $@
echo 'node ${DJOT_JS}/lib/cli.js "$$@"' >> $@
chmod +x $@
clean:
rm -f ref.rs
rm -f *.html
rm -f html
rm -f djot-js