提交 bcfc1317 编写于 作者: D Daniel Gustafsson

Remove uninteresting function_call testcase

This only tested that functions in various languages returning
SETOF could be called with SELECT func() as well as SELECT *
FROM func(). We have ample coverage of this in ICW already so
remove.
上级 208c59f8
-- start_ignore
DROP FUNCTION IF EXISTS func_plpgsql();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- end_ignore
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
CREATE TABLE
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
INSERT 0 3
CREATE OR REPLACE FUNCTION func_plpgsql() RETURNS SETOF func_call_modes_data
AS $$
DECLARE r
func_call_modes_data%rowtype;
BEGIN
FOR r IN SELECT * FROM func_call_modes_data ORDER BY c1
LOOP
RETURN NEXT r;
END LOOP;
RETURN;
END
$$ LANGUAGE PLPGSQL;
CREATE FUNCTION
SELECT func_plpgsql();
func_plpgsql
--------------
(1,1)
(2,2)
(3,3)
(3 rows)
SELECT * FROM func_plpgsql();
c1 | c2
----+----
1 | 1
2 | 2
3 | 3
(3 rows)
DROP FUNCTION IF EXISTS func_plpgsql();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- Install procedure language PL/PGSQL
-- CREATE LANGUAGE plpgsql;
-- Data preparation
\echo '-- start_ignore'
DROP FUNCTION IF EXISTS func_plpgsql();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
\echo '-- end_ignore'
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
-- PL/PGSQL
CREATE OR REPLACE FUNCTION func_plpgsql() RETURNS SETOF func_call_modes_data
AS $$
DECLARE r
func_call_modes_data%rowtype;
BEGIN
FOR r IN SELECT * FROM func_call_modes_data ORDER BY c1
LOOP
RETURN NEXT r;
END LOOP;
RETURN;
END
$$ LANGUAGE PLPGSQL;
SELECT func_plpgsql();
SELECT * FROM func_plpgsql();
-- Clean up
DROP FUNCTION IF EXISTS func_plpgsql();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
-- start_ignore
DROP FUNCTION IF EXISTS func_plpythonu();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- end_ignore
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
CREATE TABLE
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
INSERT 0 3
CREATE OR REPLACE FUNCTION func_plpythonu() RETURNS SETOF func_call_modes_data
AS $$
return plpy.execute('SELECT * FROM func_call_modes_data ORDER BY c1;');
$$ LANGUAGE plpythonu;
CREATE FUNCTION
SELECT func_plpythonu();
func_plpythonu
----------------
(1,1)
(2,2)
(3,3)
(3 rows)
SELECT * FROM func_plpythonu();
c1 | c2
----+----
1 | 1
2 | 2
3 | 3
(3 rows)
DROP FUNCTION IF EXISTS func_plpythonu();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- Install procedure language PL/PYTHONU
-- CREATE LANGUAGE plpythonu;
-- Data preparation
\echo '-- start_ignore'
DROP FUNCTION IF EXISTS func_plpythonu();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
\echo '-- end_ignore'
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
-- PL/PYTHONU
CREATE OR REPLACE FUNCTION func_plpythonu() RETURNS SETOF func_call_modes_data
AS $$
return plpy.execute('SELECT * FROM func_call_modes_data ORDER BY c1;');
$$ LANGUAGE plpythonu;
SELECT func_plpythonu();
SELECT * FROM func_plpythonu();
-- Clean up
DROP FUNCTION IF EXISTS func_plpythonu();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
-- start_ignore
DROP FUNCTION IF EXISTS func_plr();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- end_ignore
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
CREATE TABLE
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
INSERT 0 3
CREATE OR REPLACE FUNCTION func_plr() RETURNS SETOF func_call_modes_data
AS $$
pg.spi.exec('SELECT * FROM func_call_modes_data ORDER BY c1;');
$$ LANGUAGE plr;
CREATE FUNCTION
SELECT func_plr();
func_plr
----------
(1,1)
(2,2)
(3,3)
(3 rows)
SELECT * FROM func_plr();
c1 | c2
----+----
1 | 1
2 | 2
3 | 3
(3 rows)
DROP FUNCTION IF EXISTS func_plr();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- Install procedure language PL/R
-- CREATE LANGUAGE plr;
-- Data preparation
\echo '-- start_ignore'
DROP FUNCTION IF EXISTS func_plr();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
\echo '-- end_ignore'
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
-- PL/R
CREATE OR REPLACE FUNCTION func_plr() RETURNS SETOF func_call_modes_data
AS $$
pg.spi.exec('SELECT * FROM func_call_modes_data ORDER BY c1;');
$$ LANGUAGE plr;
SELECT func_plr();
SELECT * FROM func_plr();
-- Clean up
DROP FUNCTION IF EXISTS func_plr();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
-- start_ignore
DROP FUNCTION IF EXISTS func_sql();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- end_ignore
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
CREATE TABLE
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
INSERT 0 3
CREATE OR REPLACE FUNCTION func_sql() RETURNS SETOF func_call_modes_data
AS $$
SELECT * FROM func_call_modes_data ORDER BY c1;
$$ LANGUAGE SQL;
CREATE FUNCTION
SELECT func_sql();
func_sql
----------
(1,1)
(2,2)
(3,3)
(3 rows)
SELECT * FROM func_sql();
c1 | c2
----+----
1 | 1
2 | 2
3 | 3
(3 rows)
DROP FUNCTION IF EXISTS func_sql();
DROP FUNCTION
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
DROP TABLE
-- Install procedure language SQL
-- CREATE LANGUAGE sql;
-- Data preparation
\echo '-- start_ignore'
DROP FUNCTION IF EXISTS func_sql();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
\echo '-- end_ignore'
CREATE TABLE func_call_modes_data ( c1 INT, c2 INT ) DISTRIBUTED BY (c1);
INSERT INTO func_call_modes_data SELECT i, i FROM generate_series(1,3) i;
-- SQL
CREATE OR REPLACE FUNCTION func_sql() RETURNS SETOF func_call_modes_data
AS $$
SELECT * FROM func_call_modes_data ORDER BY c1;
$$ LANGUAGE SQL;
SELECT func_sql();
SELECT * FROM func_sql();
-- Clean up
DROP FUNCTION IF EXISTS func_sql();
DROP TABLE IF EXISTS func_call_modes_data CASCADE;
......@@ -250,27 +250,10 @@ class languageTestCase(MPPTestCase):
if sys.platform in ["sunos5","sunos6"]: self.skipTest("Not supported on solaris")
self.doPLR(9,"plr/query")
def test_PLR0011_function_call_modes(self):
""" Language PL/R: function call modes """
if sys.platform in ["sunos5","sunos6"]: self.skipTest("Not supported on solaris")
self.doPLR(None, "plr/test001_function_call_modes", default='-e')
def test_PLR0012_mpp16512(self):
""" mpp16512 - regression for pl/R: R interpreter expression evaluation error OR connection to the server lost"""
self.doPLR(None, "plr/mpp16512", default='-e')
def test_SQL001_function_call_modes(self):
""" Language SQL: function call modes """
self.doSQL(None, "sql/test001_function_call_modes", default='-e')
def test_PLPGSQL001_function_call_modes(self):
""" Language PL/PGSQL: function call modes """
self.doPLPGSQL(None, "plpgsql/test001_function_call_modes", default='-e')
def test_PLPYTHONU001_function_call_modes(self):
""" Language PL/PYTHONU: function call modes """
self.doPLPYTHONU(None, "plpythonu/test001_function_call_modes", default='-e')
def do_PLPERL_initialize(self):
""" Language PL/PERL upgrade to 9.1: initialize test data """
self.doTest(None, "plperl91/test000_initialize", default='-e')
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册