From 22461651972447a4bbd4c4a34e61929f93e9197d Mon Sep 17 00:00:00 2001 From: Oliver Rice Date: Wed, 21 Aug 2024 11:10:58 -0500 Subject: [PATCH] add wal2json tests --- nix/tests/expected/wal2json.out | 42 +++++++++++++++++++++++++++++++++ nix/tests/sql/wal2json.sql | 32 +++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 nix/tests/expected/wal2json.out create mode 100644 nix/tests/sql/wal2json.sql diff --git a/nix/tests/expected/wal2json.out b/nix/tests/expected/wal2json.out new file mode 100644 index 000000000..6edc359ee --- /dev/null +++ b/nix/tests/expected/wal2json.out @@ -0,0 +1,42 @@ +create schema v; +create table v.foo( + id int primary key +); +select + 1 +from + pg_create_logical_replication_slot('reg_test', 'wal2json', false); + ?column? +---------- + 1 +(1 row) + +insert into v.foo(id) values (1); +select + data +from + pg_logical_slot_get_changes( + 'reg_test', + null, + null, + 'include-pk', '1', + 'include-transaction', 'false', + 'include-timestamp', 'false', + 'include-type-oids', 'false', + 'format-version', '2', + 'actions', 'insert,update,delete' + ) x; + data +-------------------------------------------------------------------------------------------------------------------------------------- + {"action":"I","schema":"v","table":"foo","columns":[{"name":"id","type":"integer","value":1}],"pk":[{"name":"id","type":"integer"}]} +(1 row) + +select + pg_drop_replication_slot('reg_test'); + pg_drop_replication_slot +-------------------------- + +(1 row) + +drop schema v cascade; +NOTICE: drop cascades to table v.foo diff --git a/nix/tests/sql/wal2json.sql b/nix/tests/sql/wal2json.sql new file mode 100644 index 000000000..6ec4a6de9 --- /dev/null +++ b/nix/tests/sql/wal2json.sql @@ -0,0 +1,32 @@ +create schema v; + +create table v.foo( + id int primary key +); + +select + 1 +from + pg_create_logical_replication_slot('reg_test', 'wal2json', false); + +insert into v.foo(id) values (1); + +select + data +from + pg_logical_slot_get_changes( + 'reg_test', + null, + null, + 'include-pk', '1', + 'include-transaction', 'false', + 'include-timestamp', 'false', + 'include-type-oids', 'false', + 'format-version', '2', + 'actions', 'insert,update,delete' + ) x; + +select + pg_drop_replication_slot('reg_test'); + +drop schema v cascade;