mirror of
https://github.com/postgres/postgres.git
synced 2025-07-07 00:36:50 +03:00
Reduce assumptions about locale's behavior in new regex tests.
I was overoptimistic to assume that UTF8-based locales would all
consider U+1500 to be a member of the [[:alpha:]] char class.
Tweak the test cases added by commit 78a843f11
to avoid that
assumption. We might need to lobotomize them further, but this
should be enough to fix the early buildfarm reports.
This commit is contained in:
@ -107,18 +107,18 @@ select * from test_regex('[[:alnum:]]*[[:upper:]]*[\u1000-\u2000]*\u1237',
|
||||
(2 rows)
|
||||
|
||||
-- systematically test char classes
|
||||
select * from test_regex('[[:alnum:]]+', E'x\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:alnum:]]+', E'x*\u1500\u1237', 'L');
|
||||
test_regex
|
||||
-----------------
|
||||
{0,REG_ULOCALE}
|
||||
{xᔀሷ}
|
||||
{x}
|
||||
(2 rows)
|
||||
|
||||
select * from test_regex('[[:alpha:]]+', E'x\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:alpha:]]+', E'x*\u1500\u1237', 'L');
|
||||
test_regex
|
||||
-----------------
|
||||
{0,REG_ULOCALE}
|
||||
{xᔀሷ}
|
||||
{x}
|
||||
(2 rows)
|
||||
|
||||
select * from test_regex('[[:ascii:]]+', E'x\u1500\u1237', 'L');
|
||||
@ -197,10 +197,10 @@ select * from test_regex('[[:xdigit:]]+', E'xa9\u1500\u1237', 'L');
|
||||
{a9}
|
||||
(2 rows)
|
||||
|
||||
select * from test_regex('[[:word:]]+', E'x_\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:word:]]+', E'x_*\u1500\u1237', 'L');
|
||||
test_regex
|
||||
-----------------
|
||||
{0,REG_ULOCALE}
|
||||
{x_ᔀሷ}
|
||||
{x_}
|
||||
(2 rows)
|
||||
|
||||
|
@ -62,8 +62,8 @@ select * from test_regex('[[:alnum:]]*[[:upper:]]*[\u1000-\u2000]*\u1237',
|
||||
E'\u1500\u1237', 'iELMP');
|
||||
|
||||
-- systematically test char classes
|
||||
select * from test_regex('[[:alnum:]]+', E'x\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:alpha:]]+', E'x\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:alnum:]]+', E'x*\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:alpha:]]+', E'x*\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:ascii:]]+', E'x\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:blank:]]+', E'x \t\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:cntrl:]]+', E'x\u1500\u1237', 'L');
|
||||
@ -75,4 +75,4 @@ select * from test_regex('[[:punct:]]+', E'x.\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:space:]]+', E'x \t\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:upper:]]+', E'xX\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:xdigit:]]+', E'xa9\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:word:]]+', E'x_\u1500\u1237', 'L');
|
||||
select * from test_regex('[[:word:]]+', E'x_*\u1500\u1237', 'L');
|
||||
|
Reference in New Issue
Block a user