From 1a00291b39e915263e38d9841683d11a050970b6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=81lvaro=20Herrera?= <alvherre@kurilemu.de>
Date: Mon, 30 Jun 2025 20:15:08 +0200
Subject: [PATCH v5 2/3] Tests to illustrate bogus messages in CREATE
 CONSTRAINT TRIGGER

---
 src/test/regress/expected/triggers.out | 21 +++++++++++++++++++++
 src/test/regress/sql/triggers.sql      | 13 +++++++++++++
 2 files changed, 34 insertions(+)

diff --git a/src/test/regress/expected/triggers.out b/src/test/regress/expected/triggers.out
index 2bf0e77d61e..626fabf41be 100644
--- a/src/test/regress/expected/triggers.out
+++ b/src/test/regress/expected/triggers.out
@@ -2280,6 +2280,27 @@ select * from parted;
 drop table parted;
 drop function parted_trigfunc();
 --
+-- Constraint triggers
+--
+create constraint trigger crtr
+  after insert on foo not valid
+  for each row execute procedure foo ();
+ERROR:  TRIGGER constraints cannot be marked NOT VALID
+LINE 2:   after insert on foo not valid
+                              ^
+create constraint trigger crtr
+  after insert on foo no inherit
+  for each row execute procedure foo ();
+ERROR:  TRIGGER constraints cannot be marked NO INHERIT
+LINE 2:   after insert on foo no inherit
+                              ^
+create constraint trigger crtr
+  after insert on foo not enforced
+  for each row execute procedure foo ();
+ERROR:  TRIGGER constraints cannot be marked NOT ENFORCED
+LINE 2:   after insert on foo not enforced
+                              ^
+--
 -- Constraint triggers and partitioned tables
 create table parted_constr_ancestor (a int, b text)
   partition by range (b);
diff --git a/src/test/regress/sql/triggers.sql b/src/test/regress/sql/triggers.sql
index 9ffd318385f..75a334ebad5 100644
--- a/src/test/regress/sql/triggers.sql
+++ b/src/test/regress/sql/triggers.sql
@@ -1576,6 +1576,19 @@ select * from parted;
 drop table parted;
 drop function parted_trigfunc();
 
+--
+-- Constraint triggers
+--
+create constraint trigger crtr
+  after insert on foo not valid
+  for each row execute procedure foo ();
+create constraint trigger crtr
+  after insert on foo no inherit
+  for each row execute procedure foo ();
+create constraint trigger crtr
+  after insert on foo not enforced
+  for each row execute procedure foo ();
+
 --
 -- Constraint triggers and partitioned tables
 create table parted_constr_ancestor (a int, b text)
-- 
2.39.5

