aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/tests/postgresql/original/cases/unicode.out
diff options
context:
space:
mode:
authorudovichenko-r <udovichenko-r@yandex-team.com>2024-11-19 14:11:52 +0300
committerudovichenko-r <udovichenko-r@yandex-team.com>2024-11-19 14:22:01 +0300
commit72b3cd51dc3fb9d16975d353ea82fd85701393cc (patch)
tree318141940b8bf6bdb37ad6154e745e2ebfe3613f /yql/essentials/tests/postgresql/original/cases/unicode.out
parent223625eed56ec3e2808c010eac46dba1c9a64d13 (diff)
downloadydb-72b3cd51dc3fb9d16975d353ea82fd85701393cc.tar.gz
YQL-19206 Move contrib/ydb/library/yql/tests/postgresql -> yql/essentials/tests/postgresql
commit_hash:46fdf59714b20cf2b61233a06e58365227d3c8b2
Diffstat (limited to 'yql/essentials/tests/postgresql/original/cases/unicode.out')
-rw-r--r--yql/essentials/tests/postgresql/original/cases/unicode.out89
1 files changed, 89 insertions, 0 deletions
diff --git a/yql/essentials/tests/postgresql/original/cases/unicode.out b/yql/essentials/tests/postgresql/original/cases/unicode.out
new file mode 100644
index 0000000000..f2713a2326
--- /dev/null
+++ b/yql/essentials/tests/postgresql/original/cases/unicode.out
@@ -0,0 +1,89 @@
+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('');
+ normalize
+-----------
+
+(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'),
+ (5, '')) 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
+ 5 | | t | t | t | t
+(5 rows)
+
+SELECT is_normalized('abc', 'def'); -- run-time error
+ERROR: invalid normalization form: def