summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/test')
-rw-r--r--src/test/regress/expected/collate.utf8.out26
-rw-r--r--src/test/regress/sql/collate.utf8.sql15
2 files changed, 41 insertions, 0 deletions
diff --git a/src/test/regress/expected/collate.utf8.out b/src/test/regress/expected/collate.utf8.out
index eff0ef21ac5..4558d2521a2 100644
--- a/src/test/regress/expected/collate.utf8.out
+++ b/src/test/regress/expected/collate.utf8.out
@@ -9,6 +9,32 @@ SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset
\endif
SET client_encoding TO UTF8;
--
+-- Test builtin "C"
+--
+CREATE COLLATION regress_builtin_c (
+ provider = builtin, locale = 'C');
+-- non-ASCII characters are unchanged
+SELECT LOWER(U&'\00C1' COLLATE regress_builtin_c) = U&'\00C1';
+ ?column?
+----------
+ t
+(1 row)
+
+SELECT UPPER(U&'\00E1' COLLATE regress_builtin_c) = U&'\00E1';
+ ?column?
+----------
+ t
+(1 row)
+
+-- non-ASCII characters are not alphabetic
+SELECT U&'\00C1\00E1' !~ '[[:alpha:]]' COLLATE regress_builtin_c;
+ ?column?
+----------
+ t
+(1 row)
+
+DROP COLLATION regress_builtin_c;
+--
-- Test PG_C_UTF8
--
CREATE COLLATION regress_pg_c_utf8 (
diff --git a/src/test/regress/sql/collate.utf8.sql b/src/test/regress/sql/collate.utf8.sql
index 1f5f9ef491d..87fe06ddf1b 100644
--- a/src/test/regress/sql/collate.utf8.sql
+++ b/src/test/regress/sql/collate.utf8.sql
@@ -12,6 +12,21 @@ SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset
SET client_encoding TO UTF8;
--
+-- Test builtin "C"
+--
+CREATE COLLATION regress_builtin_c (
+ provider = builtin, locale = 'C');
+
+-- non-ASCII characters are unchanged
+SELECT LOWER(U&'\00C1' COLLATE regress_builtin_c) = U&'\00C1';
+SELECT UPPER(U&'\00E1' COLLATE regress_builtin_c) = U&'\00E1';
+
+-- non-ASCII characters are not alphabetic
+SELECT U&'\00C1\00E1' !~ '[[:alpha:]]' COLLATE regress_builtin_c;
+
+DROP COLLATION regress_builtin_c;
+
+--
-- Test PG_C_UTF8
--