aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/test/regress/expected/macaddr.out106
-rw-r--r--src/test/regress/parallel_schedule4
-rw-r--r--src/test/regress/serial_schedule3
-rw-r--r--src/test/regress/sql/macaddr.sql38
4 files changed, 148 insertions, 3 deletions
diff --git a/src/test/regress/expected/macaddr.out b/src/test/regress/expected/macaddr.out
new file mode 100644
index 00000000000..0b2a96d2f7a
--- /dev/null
+++ b/src/test/regress/expected/macaddr.out
@@ -0,0 +1,106 @@
+--
+-- macaddr
+--
+CREATE TABLE macaddr_data (a int, b macaddr);
+INSERT INTO macaddr_data VALUES (1, '08:00:2b:01:02:03');
+INSERT INTO macaddr_data VALUES (2, '08-00-2b-01-02-03');
+INSERT INTO macaddr_data VALUES (3, '08002b:010203');
+INSERT INTO macaddr_data VALUES (4, '08002b-010203');
+INSERT INTO macaddr_data VALUES (5, '0800.2b01.0203');
+INSERT INTO macaddr_data VALUES (6, '08002b010203');
+INSERT INTO macaddr_data VALUES (7, '0800:2b01:0203'); -- invalid
+ERROR: invalid input syntax for type macaddr: "0800:2b01:0203"
+LINE 1: INSERT INTO macaddr_data VALUES (7, '0800:2b01:0203');
+ ^
+INSERT INTO macaddr_data VALUES (8, 'not even close'); -- invalid
+ERROR: invalid input syntax for type macaddr: "not even close"
+LINE 1: INSERT INTO macaddr_data VALUES (8, 'not even close');
+ ^
+INSERT INTO macaddr_data VALUES (10, '08:00:2b:01:02:04');
+INSERT INTO macaddr_data VALUES (11, '08:00:2b:01:02:02');
+INSERT INTO macaddr_data VALUES (12, '08:00:2a:01:02:03');
+INSERT INTO macaddr_data VALUES (13, '08:00:2c:01:02:03');
+INSERT INTO macaddr_data VALUES (14, '08:00:2a:01:02:04');
+SELECT * FROM macaddr_data;
+ a | b
+----+-------------------
+ 1 | 08:00:2b:01:02:03
+ 2 | 08:00:2b:01:02:03
+ 3 | 08:00:2b:01:02:03
+ 4 | 08:00:2b:01:02:03
+ 5 | 08:00:2b:01:02:03
+ 6 | 08:00:2b:01:02:03
+ 10 | 08:00:2b:01:02:04
+ 11 | 08:00:2b:01:02:02
+ 12 | 08:00:2a:01:02:03
+ 13 | 08:00:2c:01:02:03
+ 14 | 08:00:2a:01:02:04
+(11 rows)
+
+CREATE INDEX macaddr_data_btree ON macaddr_data USING btree (b);
+CREATE INDEX macaddr_data_hash ON macaddr_data USING hash (b);
+SELECT a, b, trunc(b) FROM macaddr_data ORDER BY 2, 1;
+ a | b | trunc
+----+-------------------+-------------------
+ 12 | 08:00:2a:01:02:03 | 08:00:2a:00:00:00
+ 14 | 08:00:2a:01:02:04 | 08:00:2a:00:00:00
+ 11 | 08:00:2b:01:02:02 | 08:00:2b:00:00:00
+ 1 | 08:00:2b:01:02:03 | 08:00:2b:00:00:00
+ 2 | 08:00:2b:01:02:03 | 08:00:2b:00:00:00
+ 3 | 08:00:2b:01:02:03 | 08:00:2b:00:00:00
+ 4 | 08:00:2b:01:02:03 | 08:00:2b:00:00:00
+ 5 | 08:00:2b:01:02:03 | 08:00:2b:00:00:00
+ 6 | 08:00:2b:01:02:03 | 08:00:2b:00:00:00
+ 10 | 08:00:2b:01:02:04 | 08:00:2b:00:00:00
+ 13 | 08:00:2c:01:02:03 | 08:00:2c:00:00:00
+(11 rows)
+
+SELECT b < '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- true
+ ?column?
+----------
+ t
+(1 row)
+
+SELECT b > '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- false
+ ?column?
+----------
+ f
+(1 row)
+
+SELECT b > '08:00:2b:01:02:03' FROM macaddr_data WHERE a = 1; -- false
+ ?column?
+----------
+ f
+(1 row)
+
+SELECT b <= '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- true
+ ?column?
+----------
+ t
+(1 row)
+
+SELECT b >= '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- false
+ ?column?
+----------
+ f
+(1 row)
+
+SELECT b = '08:00:2b:01:02:03' FROM macaddr_data WHERE a = 1; -- true
+ ?column?
+----------
+ t
+(1 row)
+
+SELECT b <> '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- true
+ ?column?
+----------
+ t
+(1 row)
+
+SELECT b <> '08:00:2b:01:02:03' FROM macaddr_data WHERE a = 1; -- false
+ ?column?
+----------
+ f
+(1 row)
+
+DROP TABLE macaddr_data;
diff --git a/src/test/regress/parallel_schedule b/src/test/regress/parallel_schedule
index f03d4179e1e..c00604ede59 100644
--- a/src/test/regress/parallel_schedule
+++ b/src/test/regress/parallel_schedule
@@ -1,5 +1,5 @@
# ----------
-# $PostgreSQL: pgsql/src/test/regress/parallel_schedule,v 1.47 2008/04/10 22:25:26 tgl Exp $
+# $PostgreSQL: pgsql/src/test/regress/parallel_schedule,v 1.48 2008/10/03 15:37:18 petere 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.
@@ -18,7 +18,7 @@ test: numerology
# ----------
# The second group of parallel tests
# ----------
-test: point lseg box path polygon circle date time timetz timestamp timestamptz interval abstime reltime tinterval inet tstypes comments
+test: point lseg box path polygon circle date time timetz timestamp timestamptz interval abstime reltime tinterval inet macaddr tstypes comments
# ----------
# Another group of parallel tests
diff --git a/src/test/regress/serial_schedule b/src/test/regress/serial_schedule
index 34c75f6c5cd..88d0aba5f36 100644
--- a/src/test/regress/serial_schedule
+++ b/src/test/regress/serial_schedule
@@ -1,4 +1,4 @@
-# $PostgreSQL: pgsql/src/test/regress/serial_schedule,v 1.44 2008/04/10 22:25:26 tgl Exp $
+# $PostgreSQL: pgsql/src/test/regress/serial_schedule,v 1.45 2008/10/03 15:37:18 petere Exp $
# This should probably be in an order similar to parallel_schedule.
test: boolean
test: char
@@ -35,6 +35,7 @@ test: abstime
test: reltime
test: tinterval
test: inet
+test: macaddr
test: tstypes
test: comments
test: geometry
diff --git a/src/test/regress/sql/macaddr.sql b/src/test/regress/sql/macaddr.sql
new file mode 100644
index 00000000000..ce8d9209329
--- /dev/null
+++ b/src/test/regress/sql/macaddr.sql
@@ -0,0 +1,38 @@
+--
+-- macaddr
+--
+
+CREATE TABLE macaddr_data (a int, b macaddr);
+
+INSERT INTO macaddr_data VALUES (1, '08:00:2b:01:02:03');
+INSERT INTO macaddr_data VALUES (2, '08-00-2b-01-02-03');
+INSERT INTO macaddr_data VALUES (3, '08002b:010203');
+INSERT INTO macaddr_data VALUES (4, '08002b-010203');
+INSERT INTO macaddr_data VALUES (5, '0800.2b01.0203');
+INSERT INTO macaddr_data VALUES (6, '08002b010203');
+INSERT INTO macaddr_data VALUES (7, '0800:2b01:0203'); -- invalid
+INSERT INTO macaddr_data VALUES (8, 'not even close'); -- invalid
+
+INSERT INTO macaddr_data VALUES (10, '08:00:2b:01:02:04');
+INSERT INTO macaddr_data VALUES (11, '08:00:2b:01:02:02');
+INSERT INTO macaddr_data VALUES (12, '08:00:2a:01:02:03');
+INSERT INTO macaddr_data VALUES (13, '08:00:2c:01:02:03');
+INSERT INTO macaddr_data VALUES (14, '08:00:2a:01:02:04');
+
+SELECT * FROM macaddr_data;
+
+CREATE INDEX macaddr_data_btree ON macaddr_data USING btree (b);
+CREATE INDEX macaddr_data_hash ON macaddr_data USING hash (b);
+
+SELECT a, b, trunc(b) FROM macaddr_data ORDER BY 2, 1;
+
+SELECT b < '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- true
+SELECT b > '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- false
+SELECT b > '08:00:2b:01:02:03' FROM macaddr_data WHERE a = 1; -- false
+SELECT b <= '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- true
+SELECT b >= '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- false
+SELECT b = '08:00:2b:01:02:03' FROM macaddr_data WHERE a = 1; -- true
+SELECT b <> '08:00:2b:01:02:04' FROM macaddr_data WHERE a = 1; -- true
+SELECT b <> '08:00:2b:01:02:03' FROM macaddr_data WHERE a = 1; -- false
+
+DROP TABLE macaddr_data;