postgresql/src/test/authentication
Michael Paquier 392ea0c78f Refactor routine to find single log content pattern in TAP tests
The same routine to check if a specific pattern can be found in the
server logs was copied over four different test scripts.  This refactors
the whole to use a single routine located in PostgreSQL::Test::Cluster,
named log_contains, to grab the contents of the server logs and check
for a specific pattern.

On HEAD, the code previously used assumed that slurp_file() could not
handle an undefined offset, setting it to zero, but slurp_file() does
do an extra fseek() before retrieving the log contents only if an offset
is defined.  In two places, the test was retrieving the full log
contents with slurp_file() after calling substr() to apply an offset,
ignoring that slurp_file() would be able to handle that.

Backpatch all the way down to ease the introduction of new tests that
could rely on the new routine.

Author: Vignesh C
Reviewed-by: Andrew Dunstan, Dagfinn Ilmari Mannsåker, Michael Paquier
Discussion: https://postgr.es/m/CALDaNm0YSiLpjCmajwLfidQrFOrLNKPQir7s__PeVvh9U3uoTQ@mail.gmail.com
Backpatch-through: 11
2023-06-09 11:56:27 +09:00
..
t Refactor routine to find single log content pattern in TAP tests 2023-06-09 11:56:27 +09:00
.gitignore Add .gitignore for src/test/authentication/tmp_check. 2017-03-20 18:27:36 +01:00
Makefile Update copyright for 2023 2023-01-02 15:00:37 -05:00
README Doc: improve README files associated with TAP tests. 2021-10-31 18:12:44 -04:00
meson.build libpq: Add support for require_auth to control authorized auth methods 2023-03-14 14:00:05 +09:00

README

src/test/authentication/README

Regression tests for authentication
===================================

This directory contains a test suite for authentication. SSL certificate
authentication tests are kept separate, in src/test/ssl/, because they
are more complicated, and are not safe to run in a multi-user system.


Running the tests
=================

NOTE: You must have given the --enable-tap-tests argument to configure.

Run
    make check
or
    make installcheck
You can use "make installcheck" if you previously did "make install".
In that case, the code in the installation tree is tested.  With
"make check", a temporary installation tree is built from the current
sources and then tested.

Either way, this test initializes, starts, and stops a test Postgres
cluster.

See src/test/perl/README for more info about running these tests.