#!/bin/bash # Include our configuration . ${PREVIOUS_PWD}/CI/ft-tests.config # Arguments to /ft-test-font.sh #COMMIT=$1 #FONT=$2 #SIZE=$3 #DPI=$4 #DUMP=$5 #BENCH=$6 #VIEW=$7 #STRING=$8 #START_GLYPH=$9 #END_GLYPH=$10 # This script is where one might add additional tests. Currently, it cycles # through the below directory and call the metric dumping script for any files # in that directory. Currently, it only tests all files at pt 16 and dpi 72 and # with ft-grid's default rendering mode. GIT_HASH=$(git log --pretty=format:'%h' -n 1) EXIT=0 PASS=() FAIL=() # Ensure directory we want to write to exists. mkdir -p $TEST_OUTDIR if [[ "$RUN_TEST" == "all" ]]; then for ((i = 0; i < ${#FT_TESTS[@]}; i++)) do args=(${FT_TESTS[$i]}) ${PREVIOUS_PWD}/CI/ft-test-font.sh ${GIT_HASH} ${FT_TESTS[$i]} if [ ! -z "$1" ]; then ${PREVIOUS_PWD}/CI/ft-report.sh ${args[0]} ${args[1]} ${1} ${2}\ &> ${TEST_OUTDIR}/ft-$(basename ${args[0]})-${args[1]}-report.html result=$? if [ "$result" -eq "0" ]; then RESULT_STR="PASS" PASS+="ft-$(basename ${args[0]})-${args[1]}-report.html " else RESULT_STR="FAIL" FAIL+="ft-$(basename ${args[0]})-${args[1]}-report.html " # We store any failure to use later in the exit command. EXIT=1 fi echo "ft-$(basename ${args[0]})-${args[1]}-report.html [$RESULT_STR]" fi done else args=(${FT_TESTS[$RUN_TEST]}) ${PREVIOUS_PWD}/CI/ft-test-font.sh ${GIT_HASH} ${FT_TESTS[$RUN_TEST]} if [ ! -z "$1" ]; then ${PREVIOUS_PWD}/CI/ft-report.sh ${args[0]} ${args[1]} ${1} ${2}\ &> ${TEST_OUTDIR}/ft-$(basename ${args[0]})-${args[1]}-report.html result=$? if [ "$result" -eq "0" ]; then RESULT_STR="PASS" PASS+="ft-$(basename ${args[0]})-${args[1]}-report.html " else RESULT_STR="FAIL" FAIL+="ft-$(basename ${args[0]})-${args[1]}-report.html " # We store any failure to use later in the exit command. EXIT=1 fi echo "ft-$(basename ${args[0]})-${args[1]}-report.html [$RESULT_STR]" fi fi # Below we generate an index of all reports generated echo "

Freetype2 Difference Reports Index

" &> "${TEST_OUTDIR}/index.html" echo "" &>> "${TEST_OUTDIR}/index.html" for f in $FAIL do echo " " &>> "${TEST_OUTDIR}/index.html" done echo "" &>> "${TEST_OUTDIR}/index.html" for f in $PASS do echo " " &>> "${TEST_OUTDIR}/index.html" done echo "
FAIL
$(basename $f .html)
PASS
$(basename $f .html)
" &>> "${TEST_OUTDIR}/index.html" exit $EXIT