blob: ac92e60f0037553a036924a8164dd034f79ea6bc (
plain)
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
#!/bin/sh
# $Header: /cvsroot/pgsql/src/test/regress/Attic/regress.sh,v 1.26 1999/04/25 23:30:31 tgl Exp $
#
if [ $# -eq 0 ]
then
echo "Syntax: $0 <portname>"
exit 1
fi
if [ $1 = "win" ]
then
HOST="-h localhost"
else
HOST=""
fi
if echo '\c' | grep -s c >/dev/null 2>&1
then
ECHO_N="echo -n"
ECHO_C=""
else
ECHO_N="echo"
ECHO_C='\c'
fi
if [ -d ./obj ]; then
cd ./obj
fi
PGTZ="PST8PDT"; export PGTZ
PGDATESTYLE="Postgres,US"; export PGDATESTYLE
#FRONTEND=monitor
FRONTEND="psql $HOST -n -e -q"
SYSTEM=`../../config.guess awk -F\- '{ split($3,a,/[0-9]/); printf"%s-%s", $1, a[1] }'`
echo "=============== Notes... ================="
echo "postmaster must already be running for the regression tests to succeed."
echo "The time zone is now set to PST8PDT explicitly by this regression test"
echo " client frontend. Please report any apparent problems to"
echo " ports@postgresql.org"
echo "See regress/README for more information."
echo ""
echo "=============== destroying old regression database... ================="
destroydb $HOST regression
echo "=============== creating new regression database... ================="
if [ -n "$MULTIBYTE" ];then
mbtests=`echo $MULTIBYTE | tr "[A-Z]" "[a-z]"`
PGCLIENTENCODING="$MULTIBYTE"
export PGCLIENTENCODING
ENCODINGOPT="-E $MULTIBYTE"
else
mbtests=""
unset PGCLIENTENCODING
ENCODINGOPT=""
fi
createdb $ENCODINGOPT $HOST regression
if [ $? -ne 0 ]; then
echo createdb failed
exit 1
fi
echo "=============== running regression queries... ================="
echo "" > regression.diffs
for i in `cat sql/tests` $mbtests
do
$ECHO_N "${i} .. " $ECHO_C
$FRONTEND regression < sql/${i}.sql > results/${i}.out 2>&1
if [ -f expected/${i}-${SYSTEM}.out ]
then
EXPECTED="expected/${i}-${SYSTEM}.out"
else
EXPECTED="expected/${i}.out"
fi
if [ `diff -w ${EXPECTED} results/${i}.out | wc -l` -ne 0 ]
then
( diff -wC3 ${EXPECTED} results/${i}.out; \
echo ""; \
echo "----------------------"; \
echo "" ) >> regression.diffs
echo failed
else
echo ok
fi
done
exit
echo "=============== running error queries ... ================="
$FRONTEND regression < errors.sql
# this will generate error result code
#set this to 1 to avoid clearing the database
debug=0
if test "$debug" -eq 1
then
echo Skipping clearing and deletion of the regression database
else
echo "=============== clearing regression database... ================="
$FRONTEND regression < destroy.sql
if [ $? -ne 0 ]; then
echo the destroy script has an error
exit 1
fi
exit 0
echo "=============== destroying regression database... ================="
destroydb regression
if [ $? -ne 0 ]; then
echo destroydb failed
exit 1
fi
exit 0
fi
|