Skip to content

Commit 607b2be

Browse files
committed
Additional string function tests for coverage of oracle_compat.c
1 parent d5d552f commit 607b2be

File tree

2 files changed

+181
-0
lines changed

2 files changed

+181
-0
lines changed

src/test/regress/expected/strings.out

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1240,3 +1240,146 @@ select 'a\\bcd' as f1, 'a\\b\'cd' as f2, 'a\\b\'''cd' as f3, 'abcd\\' as f4, '
12401240
a\bcd | a\b'cd | a\b''cd | abcd\ | ab\'cd | \\
12411241
(1 row)
12421242

1243+
--
1244+
-- Additional string functions
1245+
--
1246+
SELECT initcap('hi THOMAS');
1247+
initcap
1248+
-----------
1249+
Hi Thomas
1250+
(1 row)
1251+
1252+
SELECT lpad('hi', 5, 'xy');
1253+
lpad
1254+
-------
1255+
xyxhi
1256+
(1 row)
1257+
1258+
SELECT lpad('hi', 5);
1259+
lpad
1260+
-------
1261+
hi
1262+
(1 row)
1263+
1264+
SELECT lpad('hi', -5, 'xy');
1265+
lpad
1266+
------
1267+
1268+
(1 row)
1269+
1270+
SELECT lpad('hello', 2);
1271+
lpad
1272+
------
1273+
he
1274+
(1 row)
1275+
1276+
SELECT lpad('hi', 5, '');
1277+
lpad
1278+
------
1279+
hi
1280+
(1 row)
1281+
1282+
SELECT rpad('hi', 5, 'xy');
1283+
rpad
1284+
-------
1285+
hixyx
1286+
(1 row)
1287+
1288+
SELECT rpad('hi', 5);
1289+
rpad
1290+
-------
1291+
hi
1292+
(1 row)
1293+
1294+
SELECT rpad('hi', -5, 'xy');
1295+
rpad
1296+
------
1297+
1298+
(1 row)
1299+
1300+
SELECT rpad('hello', 2);
1301+
rpad
1302+
------
1303+
he
1304+
(1 row)
1305+
1306+
SELECT rpad('hi', 5, '');
1307+
rpad
1308+
------
1309+
hi
1310+
(1 row)
1311+
1312+
SELECT ltrim('zzzytrim', 'xyz');
1313+
ltrim
1314+
-------
1315+
trim
1316+
(1 row)
1317+
1318+
SELECT translate('', '14', 'ax');
1319+
translate
1320+
-----------
1321+
1322+
(1 row)
1323+
1324+
SELECT translate('12345', '14', 'ax');
1325+
translate
1326+
-----------
1327+
a23x5
1328+
(1 row)
1329+
1330+
SELECT ascii('x');
1331+
ascii
1332+
-------
1333+
120
1334+
(1 row)
1335+
1336+
SELECT ascii('');
1337+
ascii
1338+
-------
1339+
0
1340+
(1 row)
1341+
1342+
SELECT chr(65);
1343+
chr
1344+
-----
1345+
A
1346+
(1 row)
1347+
1348+
SELECT chr(0);
1349+
ERROR: null character not permitted
1350+
SELECT repeat('Pg', 4);
1351+
repeat
1352+
----------
1353+
PgPgPgPg
1354+
(1 row)
1355+
1356+
SELECT repeat('Pg', -4);
1357+
repeat
1358+
--------
1359+
1360+
(1 row)
1361+
1362+
SELECT trim(E'\\000'::bytea from E'\\000Tom\\000'::bytea);
1363+
btrim
1364+
-------
1365+
Tom
1366+
(1 row)
1367+
1368+
SELECT btrim(E'\\000trim\\000'::bytea, E'\\000'::bytea);
1369+
btrim
1370+
-------
1371+
trim
1372+
(1 row)
1373+
1374+
SELECT btrim(''::bytea, E'\\000'::bytea);
1375+
btrim
1376+
-------
1377+
1378+
(1 row)
1379+
1380+
SELECT btrim(E'\\000trim\\000'::bytea, ''::bytea);
1381+
btrim
1382+
--------------
1383+
\000trim\000
1384+
(1 row)
1385+

src/test/regress/sql/strings.sql

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -450,3 +450,41 @@ select 'a\bcd' as f1, 'a\b''cd' as f2, 'a\b''''cd' as f3, 'abcd\' as f4, 'ab\'
450450
set standard_conforming_strings = off;
451451
452452
select 'a\\bcd' as f1, 'a\\b\'cd' as f2, 'a\\b\'''cd' as f3, 'abcd\\' as f4, 'ab\\\'cd' as f5, '\\\\' as f6;
453+
454+
455+
--
456+
-- Additional string functions
457+
--
458+
459+
SELECT initcap('hi THOMAS');
460+
461+
SELECT lpad('hi', 5, 'xy');
462+
SELECT lpad('hi', 5);
463+
SELECT lpad('hi', -5, 'xy');
464+
SELECT lpad('hello', 2);
465+
SELECT lpad('hi', 5, '');
466+
467+
SELECT rpad('hi', 5, 'xy');
468+
SELECT rpad('hi', 5);
469+
SELECT rpad('hi', -5, 'xy');
470+
SELECT rpad('hello', 2);
471+
SELECT rpad('hi', 5, '');
472+
473+
SELECT ltrim('zzzytrim', 'xyz');
474+
475+
SELECT translate('', '14', 'ax');
476+
SELECT translate('12345', '14', 'ax');
477+
478+
SELECT ascii('x');
479+
SELECT ascii('');
480+
481+
SELECT chr(65);
482+
SELECT chr(0);
483+
484+
SELECT repeat('Pg', 4);
485+
SELECT repeat('Pg', -4);
486+
487+
SELECT trim(E'\\000'::bytea from E'\\000Tom\\000'::bytea);
488+
SELECT btrim(E'\\000trim\\000'::bytea, E'\\000'::bytea);
489+
SELECT btrim(''::bytea, E'\\000'::bytea);
490+
SELECT btrim(E'\\000trim\\000'::bytea, ''::bytea);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy