Exclude tests that inject faults when faultinjector is disabled
If faultinjector is not enabled during configuration, this patch identifies tests that use faultinjector and excludes them from running. A new option "--exclude-file" is added to pg_regress. It specifies a file having names of tests, one per line, to be excluded from running. The global makefile is changed so that the exclude file creation and adding the --exclude-file option to pg_regress (and pg_isolation*regress) command line is taken care of automatically. However, one must perform these actions manually if pg_regress needs to be directly invoked from command line (instead of a make target). Running tests with faultinjector disabled is not a common developer workflow, so this should be acceptable. The advantage of changing global makefile is that all test frameworks that are based on pg_regress, such as isolation and also contrib modules need no change to their makefiles. For example, if one creates a isolation test with faultinjector, simply add it to the right schedule, it will automatically be excluded from running when faultinjector is not enabled.
Showing
想要评论请 注册 或 登录