Expand tests of test_ddl_deparse/ for ALTER TABLE
authorMichael Paquier <michael@paquier.xyz>
Sun, 31 Jul 2022 02:48:14 +0000 (11:48 +0900)
committerMichael Paquier <michael@paquier.xyz>
Sun, 31 Jul 2022 02:48:14 +0000 (11:48 +0900)
commit07ff701dbd53aeb86dd5a09a8b943b3782d4b67f
treef25718b6a2ad89475345abf1df47617083ae843b
parent6a1f082abac9da756d473e16238a906ca5a592dc
Expand tests of test_ddl_deparse/ for ALTER TABLE

This module is expanded to track the description of the objects changed
in the subcommands of ALTER TABLE by reworking the function
get_altertable_subcmdtypes() (now named get_altertable_subcmdinfo) used
in the event trigger of the test.  It now returns a set of rows made of
(subcommand type, object description) instead of a text array with only
the information about the subcommand type.

The tests have been lacking a lot of the subcommands added to
AlterTableType over the years.  All the missing subcommands are added,
and the code is now structured so as the addition of a new subcommand
is detected by removing the default clause used in the switch for the
subcommand types.

The coverage of the module is increased from roughly 30% to 50%.  More
could be done but this is already a nice improvement.

Author: Michael Paquier, Hou Zhijie
Reviewed-by: Álvaro Herrera, Amit Kapila, Hayato Kuroda
Discussion: http://postgr.es/m/OS0PR01MB571626984BD099DADF53F38394899@OS0PR01MB5716.jpnprd01.prod.outlook.com
src/test/modules/test_ddl_deparse/expected/alter_table.out
src/test/modules/test_ddl_deparse/expected/create_table.out
src/test/modules/test_ddl_deparse/expected/create_view.out
src/test/modules/test_ddl_deparse/expected/test_ddl_deparse.out
src/test/modules/test_ddl_deparse/sql/alter_table.sql
src/test/modules/test_ddl_deparse/sql/test_ddl_deparse.sql
src/test/modules/test_ddl_deparse/test_ddl_deparse--1.0.sql
src/test/modules/test_ddl_deparse/test_ddl_deparse.c