From 63c01415d1612ab2493045296189da5ce645f7f7 Mon Sep 17 00:00:00 2001 From: Marko Kreen Date: Tue, 25 Oct 2011 16:43:18 +0300 Subject: [PATCH] Add missing files for plproxy_target regtest --- expected/plproxy_target.out | 40 +++++++++++++++++++++++++++++++++ sql/plproxy_target.sql | 45 +++++++++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 expected/plproxy_target.out create mode 100644 sql/plproxy_target.sql diff --git a/expected/plproxy_target.out b/expected/plproxy_target.out new file mode 100644 index 0000000..2c5c7c8 --- /dev/null +++ b/expected/plproxy_target.out @@ -0,0 +1,40 @@ +-- test target clause +create function test_target(xuser text, tmp boolean) +returns text as $$ + cluster 'testcluster'; + run on 0; + target test_target_dst; +$$ language plproxy; +\c test_part0 +create function test_target_dst(xuser text, tmp boolean) +returns text as $$ +begin + return 'dst'; +end; +$$ language plpgsql; +\c regression +select * from test_target('foo', true); + test_target +------------- + dst +(1 row) + +-- test errors +create function test_target_err1(xuser text) +returns text as $$ + cluster 'testcluster'; + run on 0; + target test_target_dst; + target test_target_dst; +$$ language plproxy; +select * from test_target_err1('asd'); +ERROR: PL/Proxy function public.test_target_err1(1): Compile error at line 5: Only one TARGET statement allowed +create function test_target_err2(xuser text) +returns text as $$ + cluster 'testcluster'; + run on 0; + target test_target_dst; + select 1; +$$ language plproxy; +select * from test_target_err2('asd'); +ERROR: PL/Proxy function public.test_target_err2(1): Compile error at line 6: TARGET cannot be used with SELECT diff --git a/sql/plproxy_target.sql b/sql/plproxy_target.sql new file mode 100644 index 0000000..7bee249 --- /dev/null +++ b/sql/plproxy_target.sql @@ -0,0 +1,45 @@ + +-- test target clause + +create function test_target(xuser text, tmp boolean) +returns text as $$ + cluster 'testcluster'; + run on 0; + target test_target_dst; +$$ language plproxy; + +\c test_part0 + +create function test_target_dst(xuser text, tmp boolean) +returns text as $$ +begin + return 'dst'; +end; +$$ language plpgsql; + +\c regression + +select * from test_target('foo', true); + +-- test errors + +create function test_target_err1(xuser text) +returns text as $$ + cluster 'testcluster'; + run on 0; + target test_target_dst; + target test_target_dst; +$$ language plproxy; + +select * from test_target_err1('asd'); + +create function test_target_err2(xuser text) +returns text as $$ + cluster 'testcluster'; + run on 0; + target test_target_dst; + select 1; +$$ language plproxy; + +select * from test_target_err2('asd'); + -- 2.39.5