From 5809a6458450a59f8c4a7a25beaefc81cff563d1 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Sat, 16 Apr 2011 21:52:10 +0300 Subject: [PATCH] Set client encoding explicitly in plpython_unicode test This will (hopefully) eliminate the need for the plpython_unicode_0.out expected file. --- src/pl/plpython/expected/README | 3 +- src/pl/plpython/expected/plpython_unicode.out | 1 + .../plpython/expected/plpython_unicode_0.out | 50 ------------------- .../plpython/expected/plpython_unicode_3.out | 1 + src/pl/plpython/sql/plpython_unicode.sql | 2 + 5 files changed, 5 insertions(+), 52 deletions(-) delete mode 100644 src/pl/plpython/expected/plpython_unicode_0.out diff --git a/src/pl/plpython/expected/README b/src/pl/plpython/expected/README index 031b77dd0a..11424877b6 100644 --- a/src/pl/plpython/expected/README +++ b/src/pl/plpython/expected/README @@ -2,8 +2,7 @@ Guide to alternative expected files: plpython_error_0.out Python 2.4 and older -plpython_unicode.out server encoding != SQL_ASCII and client encoding == UTF8; else ... -plpython_unicode_0.out server encoding != SQL_ASCII and client encoding != UTF8; else ... +plpython_unicode.out server encoding != SQL_ASCII plpython_unicode_3.out server encoding == SQL_ASCII plpython_subtransaction_0.out Python 2.4 and older (without with statement) diff --git a/src/pl/plpython/expected/plpython_unicode.out b/src/pl/plpython/expected/plpython_unicode.out index c4ab73fd24..859edbbbaa 100644 --- a/src/pl/plpython/expected/plpython_unicode.out +++ b/src/pl/plpython/expected/plpython_unicode.out @@ -1,6 +1,7 @@ -- -- Unicode handling -- +SET client_encoding TO UTF8; CREATE TABLE unicode_test ( testvalue text NOT NULL ); diff --git a/src/pl/plpython/expected/plpython_unicode_0.out b/src/pl/plpython/expected/plpython_unicode_0.out deleted file mode 100644 index b1c6e39849..0000000000 --- a/src/pl/plpython/expected/plpython_unicode_0.out +++ /dev/null @@ -1,50 +0,0 @@ --- --- Unicode handling --- -CREATE TABLE unicode_test ( - testvalue text NOT NULL -); -CREATE FUNCTION unicode_return() RETURNS text AS E' -return u"\\x80" -' LANGUAGE plpythonu; -CREATE FUNCTION unicode_trigger() RETURNS trigger AS E' -TD["new"]["testvalue"] = u"\\x80" -return "MODIFY" -' LANGUAGE plpythonu; -CREATE TRIGGER unicode_test_bi BEFORE INSERT ON unicode_test - FOR EACH ROW EXECUTE PROCEDURE unicode_trigger(); -CREATE FUNCTION unicode_plan1() RETURNS text AS E' -plan = plpy.prepare("SELECT $1 AS testvalue", ["text"]) -rv = plpy.execute(plan, [u"\\x80"], 1) -return rv[0]["testvalue"] -' LANGUAGE plpythonu; -CREATE FUNCTION unicode_plan2() RETURNS text AS E' -plan = plpy.prepare("SELECT $1 || $2 AS testvalue", ["text", u"text"]) -rv = plpy.execute(plan, ["foo", "bar"], 1) -return rv[0]["testvalue"] -' LANGUAGE plpythonu; -SELECT unicode_return(); - unicode_return ----------------- - € -(1 row) - -INSERT INTO unicode_test (testvalue) VALUES ('test'); -SELECT * FROM unicode_test; - testvalue ------------ - € -(1 row) - -SELECT unicode_plan1(); - unicode_plan1 ---------------- - € -(1 row) - -SELECT unicode_plan2(); - unicode_plan2 ---------------- - foobar -(1 row) - diff --git a/src/pl/plpython/expected/plpython_unicode_3.out b/src/pl/plpython/expected/plpython_unicode_3.out index d023bc9b73..52d0aa0b1e 100644 --- a/src/pl/plpython/expected/plpython_unicode_3.out +++ b/src/pl/plpython/expected/plpython_unicode_3.out @@ -1,6 +1,7 @@ -- -- Unicode handling -- +SET client_encoding TO UTF8; CREATE TABLE unicode_test ( testvalue text NOT NULL ); diff --git a/src/pl/plpython/sql/plpython_unicode.sql b/src/pl/plpython/sql/plpython_unicode.sql index 6b9fac682a..bdd40c40a5 100644 --- a/src/pl/plpython/sql/plpython_unicode.sql +++ b/src/pl/plpython/sql/plpython_unicode.sql @@ -2,6 +2,8 @@ -- Unicode handling -- +SET client_encoding TO UTF8; + CREATE TABLE unicode_test ( testvalue text NOT NULL );