diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/regress/expected/time.out | 41 | ||||
| -rw-r--r-- | src/test/regress/expected/timetz.out | 41 | ||||
| -rw-r--r-- | src/test/regress/sql/time.sql | 10 | ||||
| -rw-r--r-- | src/test/regress/sql/timetz.sql | 10 |
4 files changed, 102 insertions, 0 deletions
diff --git a/src/test/regress/expected/time.out b/src/test/regress/expected/time.out index 8e0afe69e01..780d7f54557 100644 --- a/src/test/regress/expected/time.out +++ b/src/test/regress/expected/time.out @@ -73,6 +73,47 @@ SELECT f1 AS "Eight" FROM TIME_TBL WHERE f1 >= '00:00'; 15:36:39 (10 rows) +-- Check edge cases +SELECT '23:59:59.999999'::time; + time +----------------- + 23:59:59.999999 +(1 row) + +SELECT '23:59:59.9999999'::time; -- rounds up + time +---------- + 24:00:00 +(1 row) + +SELECT '23:59:60'::time; -- rounds up + time +---------- + 24:00:00 +(1 row) + +SELECT '24:00:00'::time; -- allowed + time +---------- + 24:00:00 +(1 row) + +SELECT '24:00:00.01'::time; -- not allowed +ERROR: date/time field value out of range: "24:00:00.01" +LINE 1: SELECT '24:00:00.01'::time; + ^ +SELECT '23:59:60.01'::time; -- not allowed +ERROR: date/time field value out of range: "23:59:60.01" +LINE 1: SELECT '23:59:60.01'::time; + ^ +SELECT '24:01:00'::time; -- not allowed +ERROR: date/time field value out of range: "24:01:00" +LINE 1: SELECT '24:01:00'::time; + ^ +SELECT '25:00:00'::time; -- not allowed +ERROR: date/time field value out of range: "25:00:00" +LINE 1: SELECT '25:00:00'::time; + ^ -- -- TIME simple math -- diff --git a/src/test/regress/expected/timetz.out b/src/test/regress/expected/timetz.out index 482a3463b3c..6be408f5282 100644 --- a/src/test/regress/expected/timetz.out +++ b/src/test/regress/expected/timetz.out @@ -90,6 +90,47 @@ SELECT f1 AS "Ten" FROM TIMETZ_TBL WHERE f1 >= '00:00-07'; 15:36:39-04 (12 rows) +-- Check edge cases +SELECT '23:59:59.999999'::timetz; + timetz +-------------------- + 23:59:59.999999-07 +(1 row) + +SELECT '23:59:59.9999999'::timetz; -- rounds up + timetz +------------- + 24:00:00-07 +(1 row) + +SELECT '23:59:60'::timetz; -- rounds up + timetz +------------- + 24:00:00-07 +(1 row) + +SELECT '24:00:00'::timetz; -- allowed + timetz +------------- + 24:00:00-07 +(1 row) + +SELECT '24:00:00.01'::timetz; -- not allowed +ERROR: date/time field value out of range: "24:00:00.01" +LINE 1: SELECT '24:00:00.01'::timetz; + ^ +SELECT '23:59:60.01'::timetz; -- not allowed +ERROR: date/time field value out of range: "23:59:60.01" +LINE 1: SELECT '23:59:60.01'::timetz; + ^ +SELECT '24:01:00'::timetz; -- not allowed +ERROR: date/time field value out of range: "24:01:00" +LINE 1: SELECT '24:01:00'::timetz; + ^ +SELECT '25:00:00'::timetz; -- not allowed +ERROR: date/time field value out of range: "25:00:00" +LINE 1: SELECT '25:00:00'::timetz; + ^ -- -- TIME simple math -- diff --git a/src/test/regress/sql/time.sql b/src/test/regress/sql/time.sql index 99a1562ed23..ea5f8b639f0 100644 --- a/src/test/regress/sql/time.sql +++ b/src/test/regress/sql/time.sql @@ -30,6 +30,16 @@ SELECT f1 AS "None" FROM TIME_TBL WHERE f1 < '00:00'; SELECT f1 AS "Eight" FROM TIME_TBL WHERE f1 >= '00:00'; +-- Check edge cases +SELECT '23:59:59.999999'::time; +SELECT '23:59:59.9999999'::time; -- rounds up +SELECT '23:59:60'::time; -- rounds up +SELECT '24:00:00'::time; -- allowed +SELECT '24:00:00.01'::time; -- not allowed +SELECT '23:59:60.01'::time; -- not allowed +SELECT '24:01:00'::time; -- not allowed +SELECT '25:00:00'::time; -- not allowed + -- -- TIME simple math -- diff --git a/src/test/regress/sql/timetz.sql b/src/test/regress/sql/timetz.sql index 2ad4948e850..a1fa4ef3b7f 100644 --- a/src/test/regress/sql/timetz.sql +++ b/src/test/regress/sql/timetz.sql @@ -35,6 +35,16 @@ SELECT f1 AS "None" FROM TIMETZ_TBL WHERE f1 < '00:00-07'; SELECT f1 AS "Ten" FROM TIMETZ_TBL WHERE f1 >= '00:00-07'; +-- Check edge cases +SELECT '23:59:59.999999'::timetz; +SELECT '23:59:59.9999999'::timetz; -- rounds up +SELECT '23:59:60'::timetz; -- rounds up +SELECT '24:00:00'::timetz; -- allowed +SELECT '24:00:00.01'::timetz; -- not allowed +SELECT '23:59:60.01'::timetz; -- not allowed +SELECT '24:01:00'::timetz; -- not allowed +SELECT '25:00:00'::timetz; -- not allowed + -- -- TIME simple math -- |
