t.validate-xhtml10 834 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
#! /bin/sh

# This test script validates all *.html files as XHTML.

set -eu
e=0
fail=
IFS=$(printf '\n\t')

# smoke test validator for XHTML 1.0 Transitional, and skip if it fails
cat - <<'_EOF'  | xmllint 2>/dev/null --nonet --postvalid --noout - || exit 77
<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head><title /></head><body></body></html>
_EOF

for i in "${srcdir}"/*.html ; do
    case "$i" in
	*/fetchmail-man.html) continue ;;
	*/Mailbox-Names-UTF7.html) continue ;;
    esac
23
    xmllint --nonet --postvalid --noout "$i" || { e=1 ; fail="$i${fail:+" "}$fail" ; }
24 25 26 27 28
done
if [ $e != 0 ] ; then
    echo >&2 ">>>>> Invalid XHTML in files: ${fail}."
fi
exit $e