aboutsummaryrefslogtreecommitdiff
path: root/src/pl/plpython/test.sh
blob: b5b343cac7d65688c43147ca5899570bddb46860 (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
#!/bin/sh

DBNAME=pltest

echo -n "*** Destroy $DBNAME."
dropdb $DBNAME > test.log 2>&1
echo " Done. ***"

echo -n "*** Create $DBNAME."
createdb $DBNAME >> test.log 2>&1
echo " Done. ***"

echo -n "*** Create plpython."
createlang plpython $DBNAME >> test.log 2>&1
echo " Done. ***"

echo -n "*** Create tables"
psql -q $DBNAME < plpython_schema.sql >> test.log 2>&1
echo -n ", data"
psql -q $DBNAME < plpython_populate.sql >> test.log 2>&1
echo -n ", and functions and triggers."
psql -q $DBNAME < plpython_function.sql >> test.log 2>&1
echo " Done. ***"

echo -n "*** Running feature tests."
psql -q -e $DBNAME < plpython_test.sql > feature.output 2>&1
echo " Done. ***"

echo -n "*** Running error handling tests."
psql -q -e $DBNAME < plpython_error.sql > error.output 2>&1
echo " Done. ***"

echo -n "*** Checking the results of the feature tests"
if diff -u feature.expected feature.output > feature.diff 2>&1 ; then
  echo -n " passed!"
else
  echo -n " failed!  Please examine feature.diff."
fi
echo " Done. ***"

echo -n "*** Checking the results of the error handling tests."
diff -u error.expected error.output > error.diff 2>&1
echo " Done. ***"
echo "*** You need to check the file error.diff and make sure that"
echo "    any differences are due only to the oid encoded in the "
echo "    python function name. ***"

# or write a fancier error checker...