3 # first, populate a DB to test against
6 system 'initdb -D DIR/pgsql/data';
10 /usr/bin/postgres -D DIR/pgsql/data -p PORT_N -k DIR/pgsql
14 system 'createdb -h localhost -p PORT_N test';
15 system 'psql -h localhost -p PORT_N -d test \
16 -c "CREATE TABLE them ( name text, id text ); \
17 INSERT INTO them VALUES ( \'Philip Hazel\', \'ph10\' ); \
18 INSERT INTO them VALUES ( \'Aristotle\', \'aaaa\' ); \
19 INSERT INTO them VALUES ( \'\', \'nothing\' ); \
20 INSERT INTO them VALUES ( \'\"stquot\', \'quote2\' ); \
21 INSERT INTO them VALUES ( \'before\' || CHR(13) || CHR(10) || \'after\', \'newline\' ); \
22 INSERT INTO them VALUES ( \'x\' || CHR(9) || \'x\', \'tab\' ); \
23 INSERT INTO them VALUES ( CHR(39) || \'stquot\', \'quote1\' );" \
28 exim -d-all+lookup -be
29 ${lookup pgsql {select name from them where id='ph10';}}
30 ${lookup pgsql {select name from them where id='ph10';}}
31 ${lookup pgsql {select name from them where id='xxxx';}}
32 ${lookup pgsql {select name from them where id='nothing';}}
33 ${lookup pgsql {select id,name from them where id='nothing';}}
34 ${lookup pgsql {delete from them where id='nonexist';}}
35 ${lookup pgsql {select * from them where id='quote2';}}
36 ${lookup pgsql {select * from them where id='newline';}}
37 ${lookup pgsql {select * from them where id='tab';}}
38 ${lookup pgsql {select * from them where name='${quote_pgsql:'stquot}';}}
39 ${lookup pgsql {servers=x:localhost; select name from them where id='ph10';}}
40 ${lookup pgsql {servers=localhost::PORT_N:x; select name from them where id='ph10';}}
41 ${lookup pgsql {servers=localhost::PORT_N/test/CALLER/:x; select name from them where id='ph10';}}
42 ${lookup pgsql {servers=(DIR/pgsql/.s.PGSQL.PORT_N)/test/CALLER/:x; select name from them where id='ph10';}}
44 ${lookup pgsql {SELECT name FROM them WHERE id IN ('ph10', 'aaaa');}}
45 ${lookup pgsql {SELECT * FROM them WHERE id IN ('ph10', 'aaaa');}}
57 exim -DSERVERS=\(DIR/pgsql/.s.PGSQL.PORT_N\)/test/CALLER/ -d-all+lookup -be
58 ${lookup pgsql {select name from them where id='ph10';}}
62 system 'pg_ctl stop -D DIR/pgsql/data -m immediate';