mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-10-03 01:36:59 +02:00
ce38949ba2
Upcoming patches are revamping expression evaluation significantly. It therefore seems prudent to try to ensure that the coverage of the existing evaluation code is high. This commit adds coverage for the cases that can reasonably be tested. There's still a bunch of unreachable error messages and such, but otherwise this achieves nearly full regression test coverage (with the exception of the unused GetAttributeByNum/GetAttributeByName). Author: Andres Freund Discussion: https://postgr.es/m/20170310194021.ek4bs4bl2khxkmll@alap3.anarazel.de
78 lines
1.3 KiB
Plaintext
78 lines
1.3 KiB
Plaintext
--
|
|
-- expression evaluated tests that don't fit into a more specific file
|
|
--
|
|
--
|
|
-- Tests for SQLVAlueFunction
|
|
--
|
|
-- current_date (always matches because of transactional behaviour)
|
|
SELECT date(now())::text = current_date::text;
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
-- current_time / localtime
|
|
SELECT now()::timetz::text = current_time::text;
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
SELECT now()::time::text = localtime::text;
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
-- current_timestamp / localtimestamp (always matches because of transactional behaviour)
|
|
SELECT current_timestamp = NOW();
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
-- precision
|
|
SELECT length(current_timestamp::text) >= length(current_timestamp(0)::text);
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
-- localtimestamp
|
|
SELECT now()::timestamp::text = localtimestamp::text;
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
-- current_role/user/user is tested in rolnames.sql
|
|
-- current database / catalog
|
|
SELECT current_catalog = current_database();
|
|
?column?
|
|
----------
|
|
t
|
|
(1 row)
|
|
|
|
-- current_schema
|
|
SELECT current_schema;
|
|
current_schema
|
|
----------------
|
|
public
|
|
(1 row)
|
|
|
|
SET search_path = 'notme';
|
|
SELECT current_schema;
|
|
current_schema
|
|
----------------
|
|
|
|
(1 row)
|
|
|
|
SET search_path = 'pg_catalog';
|
|
SELECT current_schema;
|
|
current_schema
|
|
----------------
|
|
pg_catalog
|
|
(1 row)
|
|
|
|
RESET search_path;
|