]> git.wh0rd.org - fontconfig.git/blob - test/run-test.sh
make dist works now. Update to 2.1.90 in preparation for eventual 2.2
[fontconfig.git] / test / run-test.sh
1 #!/bin/sh
2 FONTDIR=`pwd`/fonts
3 CACHEFILE=`pwd`/fonts.cache
4
5 ECHO=true
6
7 FCLIST=../fc-list/fc-list
8 FCCACHE=../fc-cache/fc-cache
9
10 check () {
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
23 prep() {
24 rm -rf $CACHEFILE
25 rm -rf $FONTDIR
26 mkdir $FONTDIR
27 }
28
29 dotest () {
30 TEST=$1
31 test x$VERBOSE = x || echo Running: $TEST
32 }
33
34 sed "s!@FONTDIR@!$FONTDIR!
35 s!@CACHEFILE@!$CACHEFILE!" < fonts.conf.in > fonts.conf
36
37 FONTCONFIG_FILE=`pwd`/fonts.conf
38 export FONTCONFIG_FILE
39
40 dotest "Basic check"
41 prep
42 cp 4x6.pcf 8x16.pcf $FONTDIR
43 check
44
45 dotest "With a subdir"
46 prep
47 cp 4x6.pcf 8x16.pcf $FONTDIR
48 $FCCACHE $FONTDIR
49 check
50
51 dotest "Subdir with a cache file"
52 prep
53 mkdir $FONTDIR/a
54 cp 4x6.pcf 8x16.pcf $FONTDIR/a
55 $FCCACHE $FONTDIR/a
56 check
57
58 dotest "Complicated directory structure"
59 prep
60 mkdir $FONTDIR/a
61 mkdir $FONTDIR/a/a
62 mkdir $FONTDIR/b
63 mkdir $FONTDIR/b/a
64 cp 4x6.pcf $FONTDIR/a
65 cp 8x16.pcf $FONTDIR/b/a
66 check
67
68 dotest "Subdir with an out-of-date cache file"
69 prep
70 mkdir $FONTDIR/a
71 $FCCACHE $FONTDIR/a
72 sleep 1
73 cp 4x6.pcf 8x16.pcf $FONTDIR/a
74 check
75
76 dotest "Dir with an out-of-date cache file"
77 prep
78 cp 4x6.pcf $FONTDIR
79 $FCCACHE $FONTDIR
80 sleep 1
81 mkdir $FONTDIR/a
82 cp 8x16.pcf $FONTDIR/a
83 check
84
85 rm -rf $FONTDIR $CACHEFILE $FONTCONFIG_FILE out