Spaces:
Sleeping
Sleeping
File size: 1,689 Bytes
046e3b8 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | #!/bin/bash -e
SPEC="spec/files"
checkeq() {
if res=$(diff "$1" "$2"); then
echo "[✓]"
else
echo "[✗]"
printf "%s\n" "$res"
return 1
fi
}
it() {
printf " it %s " "$*"
}
printf "pdfxmeta\n"
it "extracts metadata correctly"
checkeq <(pdfxmeta -p 1 "$SPEC/level2.pdf" "Section") \
"$SPEC/level2_meta"
it "extracts metadata in auto mode correctly"
checkeq <(pdfxmeta -a 1 -p 1 "$SPEC/level2.pdf" "Section") \
"$SPEC/level2_meta.toml"
printf "\npdftocgen\n"
it "generates toc for 2 level heading correctly"
checkeq <(pdftocgen "$SPEC/level2.pdf" < "$SPEC/level2_recipe.toml") \
"$SPEC/level2.toc"
it "generates toc for one page headings correctly"
checkeq <(pdftocgen "$SPEC/onepage.pdf" < "$SPEC/onepage_greedy.toml") \
"$SPEC/onepage.toc"
it "generates toc for hard mode correctly"
checkeq <(pdftocgen "$SPEC/hardmode.pdf" < "$SPEC/hardmode_recipe.toml") \
"$SPEC/hardmode.toc"
it "generates readable toc"
checkeq <(pdftocgen -H "$SPEC/level2.pdf" < "$SPEC/level2_recipe.toml") \
"$SPEC/level2_h.toc"
printf "\npdftocio\n"
tmpdir=$(mktemp -d)
it "adds toc to pdf and prints toc correctly"
checkeq <(pdftocgen "$SPEC/hardmode.pdf" < "$SPEC/hardmode_recipe.toml" | \
pdftocio -o "$tmpdir/out.pdf" "$SPEC/hardmode.pdf" && \
pdftocio -p "$tmpdir/out.pdf") \
"$SPEC/hardmode.toc"
it "prints toc when -p is set"
checkeq <(pdftocio -p "$SPEC/hastoc.pdf" < $SPEC/level2.toc) \
"$SPEC/hastoc.toc"
it "prints toc vpos when -v is set"
checkeq <(pdftocio -p -v "$SPEC/hastoc.pdf") \
"$SPEC/hastoc_v.toc"
|