diff options
Diffstat (limited to 'src/test/locale/koi8-r/runall')
-rwxr-xr-x | src/test/locale/koi8-r/runall | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/test/locale/koi8-r/runall b/src/test/locale/koi8-r/runall new file mode 100755 index 0000000..5f420d6 --- /dev/null +++ b/src/test/locale/koi8-r/runall @@ -0,0 +1,49 @@ +#! /bin/sh + +PATH=..:$PATH + +echo "Testing PostgreSQL compilation..." + +LC_CTYPE=ru_RU.KOI8-R +LC_COLLATE=$LC_CTYPE +export LC_CTYPE LC_COLLATE + +echo "Testing LC_CTYPE..." +if ! test-ctype > koi8-ctype.out; then + exit 1 +fi +diff expected/koi8-ctype.out koi8-ctype.out + +echo "Testing LC_COLLATE..." +perl ../sort-test.pl test-koi8-sort.in > test-koi8-sort.out +diff expected/test-koi8-sort.out test-koi8-sort.out + +### If you have Python - uncomment the following two lines +#python ../sort-test.py test-koi8-sort.in > test-koi8-sort.out +#diff expected/test-koi8-sort.out test-koi8-sort.out + + +abort() { + [ "$1" ] && echo "$*" + exit 1 +} + +for f in char varchar text; do + if echo $f | grep -q char; then + ftype="$f(60)" + else + ftype="$f" + fi + echo "Testing PgSQL: sort on $ftype type..." + + dropdb testlocale >/dev/null 2>&1 + createdb testlocale || abort "createdb failed" + psql -X -d testlocale -c "CREATE TABLE usastates (abbrev char(2), name_en char(20), name_ru $ftype);" >/dev/null 2>&1 || abort "createtable failed" + psql -X testlocale < test-koi8.sql.in > test-koi8-$f.sql.out 2>/dev/null || abort "test query failed" + diff expected/test-koi8-$f.sql.out test-koi8-$f.sql.out +done +echo "Testing PgSQL: select on regexp..." +psql -X testlocale < test-koi8-select.sql.in > test-koi8-select.sql.out 2>/dev/null || abort "select query failed" +diff expected/test-koi8-select.sql.out test-koi8-select.sql.out +dropdb testlocale || abort "dropdb failed" +echo "Finished." |