should be it
This commit is contained in:
106
external/duckdb/test/sql/collate/icu_collation_propagation.test
vendored
Normal file
106
external/duckdb/test/sql/collate/icu_collation_propagation.test
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
# name: test/sql/collate/icu_collation_propagation.test
|
||||
# description: Test collations with string functions
|
||||
# group: [collate]
|
||||
|
||||
statement ok
|
||||
create table tbl (a varchar, b varchar);
|
||||
|
||||
statement ok
|
||||
insert into tbl values ('ö', '>>>>>ö<<<<<'), ('o', '>>>>>o<<<<<'), ('p', '>>>>>p<<<<<');
|
||||
|
||||
require icu
|
||||
|
||||
# test propagation of collation through string functions
|
||||
query I
|
||||
select concat(a collate de, a) from tbl order by all;
|
||||
----
|
||||
oo
|
||||
öö
|
||||
pp
|
||||
|
||||
query I
|
||||
select lower(a collate de) from tbl order by all;
|
||||
----
|
||||
o
|
||||
ö
|
||||
p
|
||||
|
||||
query I
|
||||
select upper(a collate de) from tbl order by all;
|
||||
----
|
||||
O
|
||||
Ö
|
||||
P
|
||||
|
||||
query I
|
||||
select trim(b collate de, '<>') from tbl order by all
|
||||
----
|
||||
o
|
||||
ö
|
||||
p
|
||||
|
||||
query I
|
||||
select ltrim(b collate de, '<>') from tbl order by all
|
||||
----
|
||||
o<<<<<
|
||||
ö<<<<<
|
||||
p<<<<<
|
||||
|
||||
query I
|
||||
select rtrim(b collate de, '<>') from tbl order by all
|
||||
----
|
||||
>>>>>o
|
||||
>>>>>ö
|
||||
>>>>>p
|
||||
|
||||
query I
|
||||
select repeat(a collate de, 10) from tbl order by all;
|
||||
----
|
||||
oooooooooo
|
||||
öööööööööö
|
||||
pppppppppp
|
||||
|
||||
query I
|
||||
select left(b collate de, 6) from tbl order by all;
|
||||
----
|
||||
>>>>>o
|
||||
>>>>>ö
|
||||
>>>>>p
|
||||
|
||||
query I
|
||||
select right(b collate de, 6) from tbl order by all;
|
||||
----
|
||||
o<<<<<
|
||||
ö<<<<<
|
||||
p<<<<<
|
||||
|
||||
query I
|
||||
select right(left(b collate de, 6), 1) from tbl order by all;
|
||||
----
|
||||
o
|
||||
ö
|
||||
p
|
||||
|
||||
query I
|
||||
select reverse(a collate de) from tbl order by all;
|
||||
----
|
||||
o
|
||||
ö
|
||||
p
|
||||
|
||||
# test application of collation
|
||||
query I
|
||||
select a from tbl where contains(b collate de, 'o') order by all
|
||||
----
|
||||
o
|
||||
|
||||
query I
|
||||
select a from tbl where starts_with(b collate de, '>>>>>o') order by all
|
||||
----
|
||||
o
|
||||
|
||||
query I
|
||||
select a from tbl where b collate de like '%>o<%' order by all
|
||||
----
|
||||
o
|
||||
|
||||
Reference in New Issue
Block a user