Fix ICU tests for older ICU versions
authorPeter Eisentraut <[email protected]>
Fri, 22 Mar 2019 13:40:56 +0000 (14:40 +0100)
committerPeter Eisentraut <[email protected]>
Fri, 22 Mar 2019 13:40:56 +0000 (14:40 +0100)
Change the tests to use old-style ICU locale specifications so that
they can run on older ICU versions.

src/test/regress/expected/collate.icu.utf8.out
src/test/regress/sql/collate.icu.utf8.sql

index 23d48f4ea35c9a373d3c8d3a0257420a898e6d15..4b67922f86c5ee96c1095d45b7d2011bfb3f4b99 100644 (file)
@@ -1150,8 +1150,8 @@ SELECT 'Goldmann' < 'Götz' COLLATE "de-x-icu", 'Goldmann' > 'Götz' COLLATE tes
 (1 row)
 
 -- nondeterministic collations
-CREATE COLLATION ctest_det (provider = icu, locale = 'und', deterministic = true);
-CREATE COLLATION ctest_nondet (provider = icu, locale = 'und', deterministic = false);
+CREATE COLLATION ctest_det (provider = icu, locale = '', deterministic = true);
+CREATE COLLATION ctest_nondet (provider = icu, locale = '', deterministic = false);
 CREATE TABLE test6 (a int, b text);
 -- same string in different normal forms
 INSERT INTO test6 VALUES (1, U&'\00E4bc');
@@ -1176,8 +1176,8 @@ SELECT * FROM test6 WHERE b = 'äbc' COLLATE ctest_nondet;
  2 | äbc
 (2 rows)
 
-CREATE COLLATION case_sensitive (provider = icu, locale = 'und');
-CREATE COLLATION case_insensitive (provider = icu, locale = 'und-u-ks-level2', deterministic = false);
+CREATE COLLATION case_sensitive (provider = icu, locale = '');
+CREATE COLLATION case_insensitive (provider = icu, locale = '@colStrength=secondary', deterministic = false);
 SELECT 'abc' <= 'ABC' COLLATE case_sensitive, 'abc' >= 'ABC' COLLATE case_sensitive;
  ?column? | ?column? 
 ----------+----------
@@ -1642,7 +1642,7 @@ SELECT * FROM outer_text WHERE (f1, f2) NOT IN (SELECT * FROM inner_text);
 (2 rows)
 
 -- accents
-CREATE COLLATION ignore_accents (provider = icu, locale = 'und-u-ks-level1-kc-true', deterministic = false);
+CREATE COLLATION ignore_accents (provider = icu, locale = '@colStrength=primary;colCaseLevel=yes', deterministic = false);
 CREATE TABLE test4 (a int, b text);
 INSERT INTO test4 VALUES (1, 'cote'), (2, 'côte'), (3, 'coté'), (4, 'côté');
 SELECT * FROM test4 WHERE b = 'cote';
index 42fb491df70ec60744e1fc86b8ad7f07c22027cb..d8c65f48c1d2dce2647c7d6012e5284f3d1e6e58 100644 (file)
@@ -455,8 +455,8 @@ SELECT 'Goldmann' < 'Götz' COLLATE "de-x-icu", 'Goldmann' > 'Götz' COLLATE tes
 
 -- nondeterministic collations
 
-CREATE COLLATION ctest_det (provider = icu, locale = 'und', deterministic = true);
-CREATE COLLATION ctest_nondet (provider = icu, locale = 'und', deterministic = false);
+CREATE COLLATION ctest_det (provider = icu, locale = '', deterministic = true);
+CREATE COLLATION ctest_nondet (provider = icu, locale = '', deterministic = false);
 
 CREATE TABLE test6 (a int, b text);
 -- same string in different normal forms
@@ -466,8 +466,8 @@ SELECT * FROM test6;
 SELECT * FROM test6 WHERE b = 'äbc' COLLATE ctest_det;
 SELECT * FROM test6 WHERE b = 'äbc' COLLATE ctest_nondet;
 
-CREATE COLLATION case_sensitive (provider = icu, locale = 'und');
-CREATE COLLATION case_insensitive (provider = icu, locale = 'und-u-ks-level2', deterministic = false);
+CREATE COLLATION case_sensitive (provider = icu, locale = '');
+CREATE COLLATION case_insensitive (provider = icu, locale = '@colStrength=secondary', deterministic = false);
 
 SELECT 'abc' <= 'ABC' COLLATE case_sensitive, 'abc' >= 'ABC' COLLATE case_sensitive;
 SELECT 'abc' <= 'ABC' COLLATE case_insensitive, 'abc' >= 'ABC' COLLATE case_insensitive;
@@ -602,7 +602,7 @@ INSERT INTO inner_text VALUES ('a', NULL);
 SELECT * FROM outer_text WHERE (f1, f2) NOT IN (SELECT * FROM inner_text);
 
 -- accents
-CREATE COLLATION ignore_accents (provider = icu, locale = 'und-u-ks-level1-kc-true', deterministic = false);
+CREATE COLLATION ignore_accents (provider = icu, locale = '@colStrength=primary;colCaseLevel=yes', deterministic = false);
 
 CREATE TABLE test4 (a int, b text);
 INSERT INTO test4 VALUES (1, 'cote'), (2, 'côte'), (3, 'coté'), (4, 'côté');