From 2e0976e00363513b3607d364d2dd13a899db1939 Mon Sep 17 00:00:00 2001 From: "Thomas G. Lockhart" <lockhart@fourpalms.org> Date: Sat, 15 Nov 1997 02:55:57 +0000 Subject: [PATCH] Fix testing problem when 'current' equal to 'now' for separate inserts on fast machines with fast disks. Adjust a few other tests to be more complete. --- src/test/regress/expected/datetime.out | 37 +++++++++++++++++++++----- src/test/regress/sql/datetime.sql | 16 +++++++---- 2 files changed, 41 insertions(+), 12 deletions(-) diff --git a/src/test/regress/expected/datetime.out b/src/test/regress/expected/datetime.out index b9ea5624eb1..47796247466 100644 --- a/src/test/regress/expected/datetime.out +++ b/src/test/regress/expected/datetime.out @@ -1,6 +1,35 @@ +QUERY: SELECT ('today'::datetime = ('yesterday'::datetime + '1 day'::timespan)) as "True"; +True +---- +t +(1 row) + +QUERY: SELECT ('today'::datetime = ('tomorrow'::datetime - '1 day'::timespan)) as "True"; +True +---- +t +(1 row) + +QUERY: SELECT ('tomorrow'::datetime = ('yesterday'::datetime + '2 days'::timespan)) as "True"; +True +---- +t +(1 row) + +QUERY: SELECT ('current'::datetime = 'now'::datetime) as "True"; +True +---- +t +(1 row) + +QUERY: SELECT ('now'::datetime - 'current'::datetime) AS "ZeroSecs"; +ZeroSecs +-------- +@ 0 +(1 row) + QUERY: CREATE TABLE DATETIME_TBL( d1 datetime); QUERY: INSERT INTO DATETIME_TBL VALUES ('current'); -QUERY: INSERT INTO DATETIME_TBL VALUES ('now'); QUERY: INSERT INTO DATETIME_TBL VALUES ('today'); QUERY: INSERT INTO DATETIME_TBL VALUES ('yesterday'); QUERY: INSERT INTO DATETIME_TBL VALUES ('tomorrow'); @@ -36,12 +65,6 @@ one 1 (1 row) -QUERY: SELECT 'now'::datetime - 'current'::datetime AS ZeroSecs; -zerosecs --------- -@ 0 -(1 row) - QUERY: SELECT count(*) AS one FROM DATETIME_TBL WHERE d1 = 'now'::datetime; one --- diff --git a/src/test/regress/sql/datetime.sql b/src/test/regress/sql/datetime.sql index 51d35421ef0..5c4cdb6b456 100644 --- a/src/test/regress/sql/datetime.sql +++ b/src/test/regress/sql/datetime.sql @@ -1,12 +1,18 @@ -- *** testing new built-in time types: datetime, timespan *** -CREATE TABLE DATETIME_TBL( d1 datetime); - -- Shorthand values --- Not directly testable since these are not constant for regression testing. +-- Not directly usable for regression testing since these are not constants. -- So, just try to test parser and hope for the best - tgl 97/04/26 + +SELECT ('today'::datetime = ('yesterday'::datetime + '1 day'::timespan)) as "True"; +SELECT ('today'::datetime = ('tomorrow'::datetime - '1 day'::timespan)) as "True"; +SELECT ('tomorrow'::datetime = ('yesterday'::datetime + '2 days'::timespan)) as "True"; +SELECT ('current'::datetime = 'now'::datetime) as "True"; +SELECT ('now'::datetime - 'current'::datetime) AS "ZeroSecs"; + +CREATE TABLE DATETIME_TBL( d1 datetime); + INSERT INTO DATETIME_TBL VALUES ('current'); -INSERT INTO DATETIME_TBL VALUES ('now'); INSERT INTO DATETIME_TBL VALUES ('today'); INSERT INTO DATETIME_TBL VALUES ('yesterday'); INSERT INTO DATETIME_TBL VALUES ('tomorrow'); @@ -19,8 +25,8 @@ SELECT count(*) AS one FROM DATETIME_TBL WHERE d1 = 'yesterday'::datetime; SELECT count(*) AS one FROM DATETIME_TBL WHERE d1 = 'today'::datetime + '1 day'::timespan; SELECT count(*) AS one FROM DATETIME_TBL WHERE d1 = 'today'::datetime - '1 day'::timespan; -SELECT 'now'::datetime - 'current'::datetime AS ZeroSecs; SELECT count(*) AS one FROM DATETIME_TBL WHERE d1 = 'now'::datetime; + DELETE FROM DATETIME_TBL; -- verify uniform transaction time within transaction block -- GitLab