]> granicus.if.org Git - postgresql/commitdiff
Add a regression test case for bug #5497
authorPeter Eisentraut <peter_e@gmx.net>
Sat, 12 Jun 2010 06:05:20 +0000 (06:05 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Sat, 12 Jun 2010 06:05:20 +0000 (06:05 +0000)
src/pl/plpython/expected/plpython_types.out
src/pl/plpython/expected/plpython_types_3.out
src/pl/plpython/sql/plpython_types.sql

index 502dbb5cc079a07360f570bc338ea45948d669d2..a1659362820bb8348f6f1e9657c9a3433b2166d8 100644 (file)
@@ -528,6 +528,18 @@ SELECT * FROM test_type_conversion_array_int4(ARRAY[[1,2,3],[4,5,6]]);
 ERROR:  cannot convert multidimensional array to Python list
 DETAIL:  PL/Python only supports one-dimensional arrays.
 CONTEXT:  PL/Python function "test_type_conversion_array_int4"
+CREATE FUNCTION test_type_conversion_array_text(x text[]) RETURNS text[] AS $$
+plpy.info(x, type(x))
+return x
+$$ LANGUAGE plpythonu;
+SELECT * FROM test_type_conversion_array_text(ARRAY['foo', 'bar']);
+INFO:  (['foo', 'bar'], <type 'list'>)
+CONTEXT:  PL/Python function "test_type_conversion_array_text"
+ test_type_conversion_array_text 
+---------------------------------
+ {foo,bar}
+(1 row)
+
 CREATE FUNCTION test_type_conversion_array_bytea(x bytea[]) RETURNS bytea[] AS $$
 plpy.info(x, type(x))
 return x
index d88495512c8e6ffd07986b9cc8427ef328eb022c..38ddf02985073a2a4fa9271aab99b035e2cd4bb9 100644 (file)
@@ -528,6 +528,18 @@ SELECT * FROM test_type_conversion_array_int4(ARRAY[[1,2,3],[4,5,6]]);
 ERROR:  cannot convert multidimensional array to Python list
 DETAIL:  PL/Python only supports one-dimensional arrays.
 CONTEXT:  PL/Python function "test_type_conversion_array_int4"
+CREATE FUNCTION test_type_conversion_array_text(x text[]) RETURNS text[] AS $$
+plpy.info(x, type(x))
+return x
+$$ LANGUAGE plpython3u;
+SELECT * FROM test_type_conversion_array_text(ARRAY['foo', 'bar']);
+INFO:  (['foo', 'bar'], <class 'list'>)
+CONTEXT:  PL/Python function "test_type_conversion_array_text"
+ test_type_conversion_array_text 
+---------------------------------
+ {foo,bar}
+(1 row)
+
 CREATE FUNCTION test_type_conversion_array_bytea(x bytea[]) RETURNS bytea[] AS $$
 plpy.info(x, type(x))
 return x
index 0b905d180272526224122be129cd3d5300a8d367..2afc2ffcc1102dddabe3eafe1cee2444f19d715b 100644 (file)
@@ -223,6 +223,14 @@ SELECT * FROM test_type_conversion_array_int4(NULL);
 SELECT * FROM test_type_conversion_array_int4(ARRAY[[1,2,3],[4,5,6]]);
 
 
+CREATE FUNCTION test_type_conversion_array_text(x text[]) RETURNS text[] AS $$
+plpy.info(x, type(x))
+return x
+$$ LANGUAGE plpythonu;
+
+SELECT * FROM test_type_conversion_array_text(ARRAY['foo', 'bar']);
+
+
 CREATE FUNCTION test_type_conversion_array_bytea(x bytea[]) RETURNS bytea[] AS $$
 plpy.info(x, type(x))
 return x