Skip to content
Snippets Groups Projects
Commit 03debe19 authored by D'Arcy J.M. Cain's avatar D'Arcy J.M. Cain
Browse files

Add regression tests for MONEY type.

parent aca467b9
No related branches found
No related tags found
No related merge requests found
--
-- MONEY
--
CREATE TABLE money_data (m money);
INSERT INTO money_data VALUES ('123');
SELECT * FROM money_data;
m
---------
$123.00
(1 row)
SELECT m + '123' FROM money_data;
?column?
----------
$246.00
(1 row)
SELECT m + '123.45' FROM money_data;
?column?
----------
$246.45
(1 row)
SELECT m - '123.45' FROM money_data;
?column?
----------
-$0.45
(1 row)
SELECT m * 2 FROM money_data;
?column?
----------
$246.00
(1 row)
SELECT m / 2 FROM money_data;
?column?
----------
$61.50
(1 row)
-- All true
SELECT m = '$123.00' FROM money_data;
?column?
----------
t
(1 row)
SELECT m != '$124.00' FROM money_data;
?column?
----------
t
(1 row)
SELECT m <= '$123.00' FROM money_data;
?column?
----------
t
(1 row)
SELECT m >= '$123.00' FROM money_data;
?column?
----------
t
(1 row)
SELECT m < '$124.00' FROM money_data;
?column?
----------
t
(1 row)
SELECT m > '$122.00' FROM money_data;
?column?
----------
t
(1 row)
-- All false
SELECT m = '$123.01' FROM money_data;
?column?
----------
f
(1 row)
SELECT m != '$123.00' FROM money_data;
?column?
----------
f
(1 row)
SELECT m <= '$122.99' FROM money_data;
?column?
----------
f
(1 row)
SELECT m >= '$123.01' FROM money_data;
?column?
----------
f
(1 row)
SELECT m > '$124.00' FROM money_data;
?column?
----------
f
(1 row)
SELECT m < '$122.00' FROM money_data;
?column?
----------
f
(1 row)
SELECT cashlarger(m, '$124.00') FROM money_data;
cashlarger
------------
$124.00
(1 row)
SELECT cashsmaller(m, '$124.00') FROM money_data;
cashsmaller
-------------
$123.00
(1 row)
SELECT cash_words(m) FROM money_data;
cash_words
-------------------------------------------------
One hundred twenty three dollars and zero cents
(1 row)
SELECT cash_words(m + '1.23') FROM money_data;
cash_words
--------------------------------------------------------
One hundred twenty four dollars and twenty three cents
(1 row)
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.45');
SELECT * FROM money_data;
m
---------
$123.45
(1 row)
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.451');
SELECT * FROM money_data;
m
---------
$123.45
(1 row)
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.454');
SELECT * FROM money_data;
m
---------
$123.45
(1 row)
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.455');
SELECT * FROM money_data;
m
---------
$123.46
(1 row)
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.456');
SELECT * FROM money_data;
m
---------
$123.46
(1 row)
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.459');
SELECT * FROM money_data;
m
---------
$123.46
(1 row)
......@@ -66,6 +66,7 @@ SELECT relname, relhasindex
log_table | f
lseg_tbl | f
main_table | f
money_data | f
num_data | f
num_exp_add | t
num_exp_div | t
......@@ -148,7 +149,7 @@ SELECT relname, relhasindex
timetz_tbl | f
tinterval_tbl | f
varchar_tbl | f
(137 rows)
(138 rows)
--
-- another sanity check: every system catalog that has OIDs should have
......
......@@ -626,6 +626,7 @@ SELECT user_relns() AS user_relns
log_table
lseg_tbl
main_table
money_data
num_data
num_exp_add
num_exp_div
......@@ -666,7 +667,7 @@ SELECT user_relns() AS user_relns
toyemp
varchar_tbl
xacttest
(100 rows)
(101 rows)
SELECT name(equipment(hobby_construct(text 'skywalking', text 'mer')));
name
......
# ----------
# $PostgreSQL: pgsql/src/test/regress/parallel_schedule,v 1.45 2007/10/13 23:06:27 tgl Exp $
# $PostgreSQL: pgsql/src/test/regress/parallel_schedule,v 1.46 2007/11/24 19:49:23 darcy Exp $
#
# By convention, we put no more than twenty tests in any one parallel group;
# this limits the number of connections needed to run the tests.
......@@ -8,7 +8,7 @@
# ----------
# The first group of parallel tests
# ----------
test: boolean char name varchar text int2 int4 int8 oid float4 float8 bit numeric txid uuid enum
test: boolean char name varchar text int2 int4 int8 oid float4 float8 bit numeric txid uuid enum money
# Depends on things setup during char, varchar and text
test: strings
......
--
-- MONEY
--
CREATE TABLE money_data (m money);
INSERT INTO money_data VALUES ('123');
SELECT * FROM money_data;
SELECT m + '123' FROM money_data;
SELECT m + '123.45' FROM money_data;
SELECT m - '123.45' FROM money_data;
SELECT m * 2 FROM money_data;
SELECT m / 2 FROM money_data;
-- All true
SELECT m = '$123.00' FROM money_data;
SELECT m != '$124.00' FROM money_data;
SELECT m <= '$123.00' FROM money_data;
SELECT m >= '$123.00' FROM money_data;
SELECT m < '$124.00' FROM money_data;
SELECT m > '$122.00' FROM money_data;
-- All false
SELECT m = '$123.01' FROM money_data;
SELECT m != '$123.00' FROM money_data;
SELECT m <= '$122.99' FROM money_data;
SELECT m >= '$123.01' FROM money_data;
SELECT m > '$124.00' FROM money_data;
SELECT m < '$122.00' FROM money_data;
SELECT cashlarger(m, '$124.00') FROM money_data;
SELECT cashsmaller(m, '$124.00') FROM money_data;
SELECT cash_words(m) FROM money_data;
SELECT cash_words(m + '1.23') FROM money_data;
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.45');
SELECT * FROM money_data;
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.451');
SELECT * FROM money_data;
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.454');
SELECT * FROM money_data;
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.455');
SELECT * FROM money_data;
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.456');
SELECT * FROM money_data;
DELETE FROM money_data;
INSERT INTO money_data VALUES ('$123.459');
SELECT * FROM money_data;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment