Files
turso/testing/scalar-functions.test
2024-07-20 11:46:37 +02:00

88 lines
1.4 KiB
Tcl

#!/usr/bin/env tclsh
set testdir [file dirname $argv0]
source $testdir/tester.tcl
do_execsql_test abs {
select abs(1);
} {1}
do_execsql_test abs-negative {
select abs(-1);
} {1}
do_execsql_test abs-char {
select abs('a');
} {0.0}
do_execsql_test abs-null {
select abs(null);
} {}
do_execsql_test upper {
select upper('Limbo')
} {LIMBO}
do_execsql_test upper-number {
select upper(1)
} {1}
do_execsql_test upper-char {
select upper('a')
} {A}
do_execsql_test upper-null {
select upper(null)
} {}
do_execsql_test lower {
select lower('Limbo')
} {limbo}
do_execsql_test lower-number {
select lower(1)
} {1}
do_execsql_test lower-char {
select lower('A')
} {a}
do_execsql_test lower-null {
select lower(null)
} {}
do_execsql_test trim {
SELECT trim(' Limbo ');
} {Limbo}
do_execsql_test trim-number {
SELECT trim(1);
} {1}
do_execsql_test trim-null {
SELECT trim(null);
} {}
do_execsql_test trim-leading-whitespace {
SELECT trim(' Leading');
} {Leading}
do_execsql_test trim-trailing-whitespace {
SELECT trim('Trailing ');
} {Trailing}
do_execsql_test trim-pattern {
SELECT trim('Limbo', 'Limbo');
} {}
do_execsql_test trim-pattern-number {
SELECT trim(1, '1');
} {}
do_execsql_test trim-pattern-null {
SELECT trim(null, 'null');
} {}
do_execsql_test trim-no-match-pattern {
SELECT trim('Limbo', 'xyz');
} {Limbo}