summaryrefslogtreecommitdiffstats
path: root/src/test/regress/expected/unicode.out
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/regress/expected/unicode.out')
-rw-r--r--src/test/regress/expected/unicode.out81
1 files changed, 81 insertions, 0 deletions
diff --git a/src/test/regress/expected/unicode.out b/src/test/regress/expected/unicode.out
new file mode 100644
index 0000000..2a1e903
--- /dev/null
+++ b/src/test/regress/expected/unicode.out
@@ -0,0 +1,81 @@
+SELECT getdatabaseencoding() <> 'UTF8' AS skip_test \gset
+\if :skip_test
+\quit
+\endif
+SELECT U&'\0061\0308bc' <> U&'\00E4bc' COLLATE "C" AS sanity_check;
+ sanity_check
+--------------
+ t
+(1 row)
+
+SELECT normalize(U&'\0061\0308\24D1c') = U&'\00E4\24D1c' COLLATE "C" AS test_default;
+ test_default
+--------------
+ t
+(1 row)
+
+SELECT normalize(U&'\0061\0308\24D1c', NFC) = U&'\00E4\24D1c' COLLATE "C" AS test_nfc;
+ test_nfc
+----------
+ t
+(1 row)
+
+SELECT normalize(U&'\00E4bc', NFC) = U&'\00E4bc' COLLATE "C" AS test_nfc_idem;
+ test_nfc_idem
+---------------
+ t
+(1 row)
+
+SELECT normalize(U&'\00E4\24D1c', NFD) = U&'\0061\0308\24D1c' COLLATE "C" AS test_nfd;
+ test_nfd
+----------
+ t
+(1 row)
+
+SELECT normalize(U&'\0061\0308\24D1c', NFKC) = U&'\00E4bc' COLLATE "C" AS test_nfkc;
+ test_nfkc
+-----------
+ t
+(1 row)
+
+SELECT normalize(U&'\00E4\24D1c', NFKD) = U&'\0061\0308bc' COLLATE "C" AS test_nfkd;
+ test_nfkd
+-----------
+ t
+(1 row)
+
+SELECT "normalize"('abc', 'def'); -- run-time error
+ERROR: invalid normalization form: def
+SELECT U&'\00E4\24D1c' IS NORMALIZED AS test_default;
+ test_default
+--------------
+ t
+(1 row)
+
+SELECT U&'\00E4\24D1c' IS NFC NORMALIZED AS test_nfc;
+ test_nfc
+----------
+ t
+(1 row)
+
+SELECT num, val,
+ val IS NFC NORMALIZED AS NFC,
+ val IS NFD NORMALIZED AS NFD,
+ val IS NFKC NORMALIZED AS NFKC,
+ val IS NFKD NORMALIZED AS NFKD
+FROM
+ (VALUES (1, U&'\00E4bc'),
+ (2, U&'\0061\0308bc'),
+ (3, U&'\00E4\24D1c'),
+ (4, U&'\0061\0308\24D1c')) vals (num, val)
+ORDER BY num;
+ num | val | nfc | nfd | nfkc | nfkd
+-----+-----+-----+-----+------+------
+ 1 | äbc | t | f | t | f
+ 2 | äbc | f | t | f | t
+ 3 | äⓑc | t | f | f | f
+ 4 | äⓑc | f | t | f | f
+(4 rows)
+
+SELECT is_normalized('abc', 'def'); -- run-time error
+ERROR: invalid normalization form: def