summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2024-04-07 20:21:27 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2024-04-07 20:26:22 +0300
commitf700e7d5710d04940df2d4e0d04080b1899a8f07 (patch)
treec368b9f09d1bc7c79f91f650ac75bf842f357e4f /src
parent9e0493445a575495b901bd8ab0d9c976ee6e4e62 (diff)
Don't clobber test exit code at cleanup in LDAP/Kerberors tests
If the test script die()d before running the first test, the whole test was interpreted as SKIPped rather than failed. The PostgreSQL::Cluster module got this right. Backpatch to all supported versions. Discussion: https://www.postgresql.org/message-id/fb898a70-3a88-4629-88e9-f2375020061d@iki.fi
Diffstat (limited to 'src')
-rw-r--r--src/test/kerberos/t/001_auth.pl7
-rw-r--r--src/test/ldap/t/001_auth.pl5
2 files changed, 11 insertions, 1 deletions
diff --git a/src/test/kerberos/t/001_auth.pl b/src/test/kerberos/t/001_auth.pl
index 0363c5f5a8e..1c1fd674cf0 100644
--- a/src/test/kerberos/t/001_auth.pl
+++ b/src/test/kerberos/t/001_auth.pl
@@ -180,7 +180,12 @@ system_or_bail $krb5kdc, '-P', $kdc_pidfile;
END
{
- kill 'INT', `cat $kdc_pidfile` if -f $kdc_pidfile;
+ # take care not to change the script's exit value
+ my $exit_code = $?;
+
+ kill 'INT', `cat $kdc_pidfile` if defined($kdc_pidfile) && -f $kdc_pidfile;
+
+ $? = $exit_code;
}
note "setting up PostgreSQL instance";
diff --git a/src/test/ldap/t/001_auth.pl b/src/test/ldap/t/001_auth.pl
index 850b28f20f8..c0f2782f495 100644
--- a/src/test/ldap/t/001_auth.pl
+++ b/src/test/ldap/t/001_auth.pl
@@ -147,7 +147,12 @@ system_or_bail $slapd, '-f', $slapd_conf,'-s0', '-h', "$ldap_url $ldaps_url";
END
{
+ # take care not to change the script's exit value
+ my $exit_code = $?;
+
kill 'INT', `cat $slapd_pidfile` if -f $slapd_pidfile;
+
+ $? = $exit_code;
}
append_to_file($ldap_pwfile, $ldap_rootpw);