]> git.wh0rd.org - fontconfig.git/blame - test/run-test.sh
Add simple tests
[fontconfig.git] / test / run-test.sh
CommitLineData
44d90378
KP
1#!/bin/sh
2FONTDIR=`pwd`/fonts
3CACHEFILE=`pwd`/fonts.cache
4
5ECHO=true
6
7FCLIST=../fc-list/fc-list
8FCCACHE=../fc-cache/fc-cache
9
10check () {
11 $FCLIST - family pixelsize | sort > out
12 echo "=" >> out
13 $FCLIST - family pixelsize | sort >> out
14 echo "=" >> out
15 $FCLIST - family pixelsize | sort >> out
16 if cmp out out.expected > /dev/null ; then : ; else
17 echo "*** Test failed: $TEST"
18 echo "*** output is in 'out', expected output in 'out.expected'"
19 exit
20 fi
21}
22
23prep() {
24 rm -rf $CACHEFILE
25 rm -rf $FONTDIR
26 mkdir $FONTDIR
27}
28
29dotest () {
30 TEST=$1
31 test x$VERBOSE = x || echo Running: $TEST
32}
33
34sed "s!@FONTDIR@!$FONTDIR!
35s!@CACHEFILE@!$CACHEFILE!" < fonts.conf.in > fonts.conf
36
37FONTCONFIG_FILE=`pwd`/fonts.conf
38export FONTCONFIG_FILE
39
40dotest "Basic check"
41prep
42cp 4x6.pcf 8x16.pcf $FONTDIR
43check
44
45dotest "With a subdir"
46prep
47cp 4x6.pcf 8x16.pcf $FONTDIR
48$FCCACHE $FONTDIR
49check
50
51dotest "Subdir with a cache file"
52prep
53mkdir $FONTDIR/a
54cp 4x6.pcf 8x16.pcf $FONTDIR/a
55$FCCACHE $FONTDIR/a
56check
57
58dotest "Complicated directory structure"
59prep
60mkdir $FONTDIR/a
61mkdir $FONTDIR/a/a
62mkdir $FONTDIR/b
63mkdir $FONTDIR/b/a
64cp 4x6.pcf $FONTDIR/a
65cp 8x16.pcf $FONTDIR/b/a
66check
67
68dotest "Subdir with an out-of-date cache file"
69prep
70mkdir $FONTDIR/a
71$FCCACHE $FONTDIR/a
72sleep 1
73cp 4x6.pcf 8x16.pcf $FONTDIR/a
74check
75
76dotest "Dir with an out-of-date cache file"
77prep
78cp 4x6.pcf $FONTDIR
79$FCCACHE $FONTDIR
80sleep 1
81mkdir $FONTDIR/a
82cp 8x16.pcf $FONTDIR/a
83check
84
85rm -rf $FONTDIR $CACHEFILE $FONTCONFIG_FILE out