summaryrefslogtreecommitdiff
path: root/test/run-test.sh
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2003-03-01 05:55:17 +0000
committerKeith Packard <keithp@keithp.com>2003-03-01 05:55:17 +0000
commit44d903783dd0b9b671be9e829c5b9e4e78c681c0 (patch)
tree01e6488f8956e4fddb7cf0c19a10b8e59bd1efca /test/run-test.sh
parent9238fc061d2f89590d578bff69fd3e8fc4b72e2c (diff)
Add simple tests
Diffstat (limited to 'test/run-test.sh')
-rw-r--r--test/run-test.sh85
1 files changed, 85 insertions, 0 deletions
diff --git a/test/run-test.sh b/test/run-test.sh
new file mode 100644
index 00000000..b2600d78
--- /dev/null
+++ b/test/run-test.sh
@@ -0,0 +1,85 @@
+#!/bin/sh
+FONTDIR=`pwd`/fonts
+CACHEFILE=`pwd`/fonts.cache
+
+ECHO=true
+
+FCLIST=../fc-list/fc-list
+FCCACHE=../fc-cache/fc-cache
+
+check () {
+ $FCLIST - family pixelsize | sort > out
+ echo "=" >> out
+ $FCLIST - family pixelsize | sort >> out
+ echo "=" >> out
+ $FCLIST - family pixelsize | sort >> out
+ if cmp out out.expected > /dev/null ; then : ; else
+ echo "*** Test failed: $TEST"
+ echo "*** output is in 'out', expected output in 'out.expected'"
+ exit
+ fi
+}
+
+prep() {
+ rm -rf $CACHEFILE
+ rm -rf $FONTDIR
+ mkdir $FONTDIR
+}
+
+dotest () {
+ TEST=$1
+ test x$VERBOSE = x || echo Running: $TEST
+}
+
+sed "s!@FONTDIR@!$FONTDIR!
+s!@CACHEFILE@!$CACHEFILE!" < fonts.conf.in > fonts.conf
+
+FONTCONFIG_FILE=`pwd`/fonts.conf
+export FONTCONFIG_FILE
+
+dotest "Basic check"
+prep
+cp 4x6.pcf 8x16.pcf $FONTDIR
+check
+
+dotest "With a subdir"
+prep
+cp 4x6.pcf 8x16.pcf $FONTDIR
+$FCCACHE $FONTDIR
+check
+
+dotest "Subdir with a cache file"
+prep
+mkdir $FONTDIR/a
+cp 4x6.pcf 8x16.pcf $FONTDIR/a
+$FCCACHE $FONTDIR/a
+check
+
+dotest "Complicated directory structure"
+prep
+mkdir $FONTDIR/a
+mkdir $FONTDIR/a/a
+mkdir $FONTDIR/b
+mkdir $FONTDIR/b/a
+cp 4x6.pcf $FONTDIR/a
+cp 8x16.pcf $FONTDIR/b/a
+check
+
+dotest "Subdir with an out-of-date cache file"
+prep
+mkdir $FONTDIR/a
+$FCCACHE $FONTDIR/a
+sleep 1
+cp 4x6.pcf 8x16.pcf $FONTDIR/a
+check
+
+dotest "Dir with an out-of-date cache file"
+prep
+cp 4x6.pcf $FONTDIR
+$FCCACHE $FONTDIR
+sleep 1
+mkdir $FONTDIR/a
+cp 8x16.pcf $FONTDIR/a
+check
+
+rm -rf $FONTDIR $CACHEFILE $FONTCONFIG_FILE out