Split contrib/cube platform-depended checks into separate test

We're currently maintaining two outputs for cube regression test.  But that
appears to be unsuitable, because these outputs are different in out few checks
involving scientific notation.  So, split checks involving scientific notation
into separate test, making contrib/cube easier to maintain.  Backpatch to all
supported versions in order to make further backpatching easier.

Discussion: https://postgr.es/m/CAPpHfdvJgWjxHsJTtT%2Bo1tz3OR8EFHcLQjhp-d3%2BUcmJLh-fQA%40mail.gmail.com
Author: Alexander Korotkov
Backpatch-through: 9.3
This commit is contained in:
Alexander Korotkov 2018-08-30 14:09:25 +03:00
parent 9daff2fe69
commit 1668186eb3
7 changed files with 235 additions and 2126 deletions

View File

@ -11,7 +11,7 @@ PGFILEDESC = "cube - multidimensional cube data type"
HEADERS = cubedata.h
REGRESS = cube
REGRESS = cube cube_sci
EXTRA_CLEAN = y.tab.c y.tab.h

View File

@ -62,90 +62,6 @@ SELECT '-1.0'::cube AS cube;
(-1)
(1 row)
SELECT '1e27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1e27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1.0e27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1.0e27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1e+27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1e+27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1.0e+27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1.0e+27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1e-7'::cube AS cube;
cube
---------
(1e-07)
(1 row)
SELECT '-1e-7'::cube AS cube;
cube
----------
(-1e-07)
(1 row)
SELECT '1.0e-7'::cube AS cube;
cube
---------
(1e-07)
(1 row)
SELECT '-1.0e-7'::cube AS cube;
cube
----------
(-1e-07)
(1 row)
SELECT '1e-300'::cube AS cube;
cube
----------
(1e-300)
(1 row)
SELECT '-1e-300'::cube AS cube;
cube
-----------
(-1e-300)
(1 row)
SELECT 'infinity'::cube AS cube;
cube
------------
@ -164,24 +80,6 @@ SELECT 'NaN'::cube AS cube;
(NaN)
(1 row)
SELECT '1234567890123456'::cube AS cube;
cube
------------------------
(1.23456789012346e+15)
(1 row)
SELECT '+1234567890123456'::cube AS cube;
cube
------------------------
(1.23456789012346e+15)
(1 row)
SELECT '-1234567890123456'::cube AS cube;
cube
-------------------------
(-1.23456789012346e+15)
(1 row)
SELECT '.1234567890123456'::cube AS cube;
cube
---------------------

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,106 @@
---
--- Testing cube output in scientific notation. This was put into separate
--- test, because has platform-depending output.
---
SELECT '1e27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1e27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1.0e27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1.0e27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1e+27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1e+27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1.0e+27'::cube AS cube;
cube
---------
(1e+27)
(1 row)
SELECT '-1.0e+27'::cube AS cube;
cube
----------
(-1e+27)
(1 row)
SELECT '1e-7'::cube AS cube;
cube
---------
(1e-07)
(1 row)
SELECT '-1e-7'::cube AS cube;
cube
----------
(-1e-07)
(1 row)
SELECT '1.0e-7'::cube AS cube;
cube
---------
(1e-07)
(1 row)
SELECT '-1.0e-7'::cube AS cube;
cube
----------
(-1e-07)
(1 row)
SELECT '1e-300'::cube AS cube;
cube
----------
(1e-300)
(1 row)
SELECT '-1e-300'::cube AS cube;
cube
-----------
(-1e-300)
(1 row)
SELECT '1234567890123456'::cube AS cube;
cube
------------------------
(1.23456789012346e+15)
(1 row)
SELECT '+1234567890123456'::cube AS cube;
cube
------------------------
(1.23456789012346e+15)
(1 row)
SELECT '-1234567890123456'::cube AS cube;
cube
-------------------------
(-1.23456789012346e+15)
(1 row)

View File

@ -0,0 +1,106 @@
---
--- Testing cube output in scientific notation. This was put into separate
--- test, because has platform-depending output.
---
SELECT '1e27'::cube AS cube;
cube
----------
(1e+027)
(1 row)
SELECT '-1e27'::cube AS cube;
cube
-----------
(-1e+027)
(1 row)
SELECT '1.0e27'::cube AS cube;
cube
----------
(1e+027)
(1 row)
SELECT '-1.0e27'::cube AS cube;
cube
-----------
(-1e+027)
(1 row)
SELECT '1e+27'::cube AS cube;
cube
----------
(1e+027)
(1 row)
SELECT '-1e+27'::cube AS cube;
cube
-----------
(-1e+027)
(1 row)
SELECT '1.0e+27'::cube AS cube;
cube
----------
(1e+027)
(1 row)
SELECT '-1.0e+27'::cube AS cube;
cube
-----------
(-1e+027)
(1 row)
SELECT '1e-7'::cube AS cube;
cube
----------
(1e-007)
(1 row)
SELECT '-1e-7'::cube AS cube;
cube
-----------
(-1e-007)
(1 row)
SELECT '1.0e-7'::cube AS cube;
cube
----------
(1e-007)
(1 row)
SELECT '-1.0e-7'::cube AS cube;
cube
-----------
(-1e-007)
(1 row)
SELECT '1e-300'::cube AS cube;
cube
----------
(1e-300)
(1 row)
SELECT '-1e-300'::cube AS cube;
cube
-----------
(-1e-300)
(1 row)
SELECT '1234567890123456'::cube AS cube;
cube
-------------------------
(1.23456789012346e+015)
(1 row)
SELECT '+1234567890123456'::cube AS cube;
cube
-------------------------
(1.23456789012346e+015)
(1 row)
SELECT '-1234567890123456'::cube AS cube;
cube
--------------------------
(-1.23456789012346e+015)
(1 row)

View File

@ -22,26 +22,9 @@ SELECT '.1'::cube AS cube;
SELECT '-.1'::cube AS cube;
SELECT '1.0'::cube AS cube;
SELECT '-1.0'::cube AS cube;
SELECT '1e27'::cube AS cube;
SELECT '-1e27'::cube AS cube;
SELECT '1.0e27'::cube AS cube;
SELECT '-1.0e27'::cube AS cube;
SELECT '1e+27'::cube AS cube;
SELECT '-1e+27'::cube AS cube;
SELECT '1.0e+27'::cube AS cube;
SELECT '-1.0e+27'::cube AS cube;
SELECT '1e-7'::cube AS cube;
SELECT '-1e-7'::cube AS cube;
SELECT '1.0e-7'::cube AS cube;
SELECT '-1.0e-7'::cube AS cube;
SELECT '1e-300'::cube AS cube;
SELECT '-1e-300'::cube AS cube;
SELECT 'infinity'::cube AS cube;
SELECT '-infinity'::cube AS cube;
SELECT 'NaN'::cube AS cube;
SELECT '1234567890123456'::cube AS cube;
SELECT '+1234567890123456'::cube AS cube;
SELECT '-1234567890123456'::cube AS cube;
SELECT '.1234567890123456'::cube AS cube;
SELECT '+.1234567890123456'::cube AS cube;
SELECT '-.1234567890123456'::cube AS cube;

View File

@ -0,0 +1,22 @@
---
--- Testing cube output in scientific notation. This was put into separate
--- test, because has platform-depending output.
---
SELECT '1e27'::cube AS cube;
SELECT '-1e27'::cube AS cube;
SELECT '1.0e27'::cube AS cube;
SELECT '-1.0e27'::cube AS cube;
SELECT '1e+27'::cube AS cube;
SELECT '-1e+27'::cube AS cube;
SELECT '1.0e+27'::cube AS cube;
SELECT '-1.0e+27'::cube AS cube;
SELECT '1e-7'::cube AS cube;
SELECT '-1e-7'::cube AS cube;
SELECT '1.0e-7'::cube AS cube;
SELECT '-1.0e-7'::cube AS cube;
SELECT '1e-300'::cube AS cube;
SELECT '-1e-300'::cube AS cube;
SELECT '1234567890123456'::cube AS cube;
SELECT '+1234567890123456'::cube AS cube;
SELECT '-1234567890123456'::cube AS cube;