diff --git a/src/test/regress/expected/async.out b/src/test/regress/expected/async.out new file mode 100644 index 0000000..ae0d5df --- /dev/null +++ b/src/test/regress/expected/async.out @@ -0,0 +1,34 @@ +-- +-- ASYNC +-- +--Should work. Send a valid message via a valid channel name +SELECT pg_notify('notify_async1','sample message1'); + pg_notify +----------- + +(1 row) + +SELECT pg_notify('notify_async1',''); + pg_notify +----------- + +(1 row) + +SELECT pg_notify('notify_async1',NULL); + pg_notify +----------- + +(1 row) + +-- Should fail. Send a valid message via an invalid channel name +SELECT pg_notify('','sample message1'); +ERROR: channel name cannot be empty +SELECT pg_notify(NULL,'sample message1'); +ERROR: channel name cannot be empty +SELECT pg_notify('notify_async_channel_name_too_long______________________________','sample_message1'); +ERROR: channel name too long +--Should work. Valid NOTIFY/LISTEN/UNLISTEN commands +NOTIFY notify_async2; +LISTEN notify_async2; +UNLISTEN notify_async2; +UNLISTEN *; diff --git a/src/test/regress/parallel_schedule b/src/test/regress/parallel_schedule index 2af28b1..04cdbb7 100644 --- a/src/test/regress/parallel_schedule +++ b/src/test/regress/parallel_schedule @@ -88,7 +88,7 @@ test: privileges security_label collate matview # ---------- # Another group of parallel tests # ---------- -test: alter_generic misc psql +test: alter_generic misc psql async # rules cannot run concurrently with any test that creates a view test: rules diff --git a/src/test/regress/sql/async.sql b/src/test/regress/sql/async.sql new file mode 100644 index 0000000..af3a904 --- /dev/null +++ b/src/test/regress/sql/async.sql @@ -0,0 +1,19 @@ +-- +-- ASYNC +-- + +--Should work. Send a valid message via a valid channel name +SELECT pg_notify('notify_async1','sample message1'); +SELECT pg_notify('notify_async1',''); +SELECT pg_notify('notify_async1',NULL); + +-- Should fail. Send a valid message via an invalid channel name +SELECT pg_notify('','sample message1'); +SELECT pg_notify(NULL,'sample message1'); +SELECT pg_notify('notify_async_channel_name_too_long______________________________','sample_message1'); + +--Should work. Valid NOTIFY/LISTEN/UNLISTEN commands +NOTIFY notify_async2; +LISTEN notify_async2; +UNLISTEN notify_async2; +UNLISTEN *;