From: Bernd Edlinger Date: Thu, 9 Jan 2025 14:14:15 +0000 (+0100) Subject: Fix intermittent test failure in 80-test_cmp_http.t X-Git-Tag: openssl-3.1.8~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9e362d7a9da3677015646bd7b3d8a7ef4e8e8ec9;p=thirdparty%2Fopenssl.git Fix intermittent test failure in 80-test_cmp_http.t output to stderr is unbuffered bypassing the normal output, which does not happen at line boundaries and is therefore confusing the TAP parser. This is known to cause random test failures like this one: 80-test_cmp_http.t (Wstat: 0 Tests: 5 Failed: 0) Parse errors: Tests out of sequence. Found (6) but expected (5) Bad plan. You planned 6 tests but ran 5. Fixes #23992 Reviewed-by: Tom Cosgrove Reviewed-by: Saša Nedvědický (Merged from https://github.com/openssl/openssl/pull/26364) --- diff --git a/test/recipes/80-test_cmp_http.t b/test/recipes/80-test_cmp_http.t index e045f29c43a..908909c2c64 100644 --- a/test/recipes/80-test_cmp_http.t +++ b/test/recipes/80-test_cmp_http.t @@ -270,7 +270,7 @@ sub start_mock_server { print "Current directory is ".getcwd()."\n"; print "Launching mock server: $cmd\n"; die "Invalid port: $server_port" unless $server_port =~ m/^\d+$/; - my $pid = open($server_fh, "$cmd|") or die "Trying to $cmd"; + my $pid = open($server_fh, "$cmd 2>".result_dir()."/error.txt |") or die "Trying to $cmd"; print "Pid is: $pid\n"; if ($server_port == 0) { # Find out the actual server port