summaryrefslogtreecommitdiff
path: root/src/test/regress/sql
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2020-06-18 08:41:31 +0200
committerPeter Eisentraut <peter@eisentraut.org>2020-06-18 08:41:31 +0200
commit9d402c73ade412bdeb9064c81fc4ed071c4e93f8 (patch)
tree3d93e63346682afa1bf742de663a5770ce5713f6 /src/test/regress/sql
parent2b2a070d98b2f2c7ecc031e582cfefa400316ce3 (diff)
downloadpostgresql-9d402c73ade412bdeb9064c81fc4ed071c4e93f8.tar.gz
Expand tests for factorial
Move from int4 to numeric test. (They were originally int4 functions, but were reimplemented for numeric in 04a4821adef38155b7920ba9eb83c4c3c29156f8.) Add some tests for edge cases. Discussion: https://www.postgresql.org/message-id/flat/6ce1df0e-86a3-e544-743a-f357ff663f68%402ndquadrant.com
Diffstat (limited to 'src/test/regress/sql')
-rw-r--r--src/test/regress/sql/int4.sql4
-rw-r--r--src/test/regress/sql/numeric.sql11
2 files changed, 11 insertions, 4 deletions
diff --git a/src/test/regress/sql/int4.sql b/src/test/regress/sql/int4.sql
index a9e90a96c4..b00c9dea2a 100644
--- a/src/test/regress/sql/int4.sql
+++ b/src/test/regress/sql/int4.sql
@@ -114,10 +114,6 @@ SELECT int2 '2' * int4 '2' = int4 '16' / int2 '4' AS true;
SELECT int4 '1000' < int4 '999' AS false;
-SELECT 4! AS twenty_four;
-
-SELECT !!3 AS six;
-
SELECT 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 AS ten;
SELECT 2 + 2 / 2 AS three;
diff --git a/src/test/regress/sql/numeric.sql b/src/test/regress/sql/numeric.sql
index 41475a9a24..1332a9cf07 100644
--- a/src/test/regress/sql/numeric.sql
+++ b/src/test/regress/sql/numeric.sql
@@ -1111,3 +1111,14 @@ FROM (VALUES (0::numeric, 0::numeric),
(4232.820::numeric, 132.72000::numeric)) AS v(a, b);
SELECT lcm(9999 * (10::numeric)^131068 + (10::numeric^131068 - 1), 2); -- overflow
+
+--
+-- Tests for factorial
+--
+SELECT 4!;
+SELECT !!3;
+SELECT factorial(15);
+SELECT 100000!;
+SELECT 0!;
+SELECT -4!;
+SELECT factorial(-4);