From 7ad93a42d9af09dfc008658d5acd27aa46964051 Mon Sep 17 00:00:00 2001 From: Mikel Olasagasti Uranga Date: Fri, 25 Jul 2025 00:11:12 +0200 Subject: [PATCH] test: Update TLS error checks for Go 1.25 compatibility (#522) The error message for client certificate failures changed in Go 1.25. Update tests to check for both the old ("bad certificate") and new ("handshake failure") error strings to support multiple Go versions. Signed-off-by: Mikel Olasagasti Uranga --- tls_settings_test.go | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/tls_settings_test.go b/tls_settings_test.go index b12a251..ad8958f 100644 --- a/tls_settings_test.go +++ b/tls_settings_test.go @@ -253,8 +253,12 @@ func TestBrokenTLS_ClientNotTrusted(t *testing.T) { e.Close() t.Fatal("expecting TLS failure setting up server and client") } - if !strings.Contains(err.Error(), "bad certificate") { - t.Fatalf("expecting TLS certificate error, got: %v", err) + // Check for either the old error (Go <=1.24) or the new one (Go 1.25+) + // Go 1.24: "bad certificate" + // Go 1.25: "handshake failure" + errMsg := err.Error() + if !strings.Contains(errMsg, "bad certificate") && !strings.Contains(errMsg, "handshake failure") { + t.Fatalf("expecting a specific TLS certificate or handshake error, got: %v", err) } } @@ -293,8 +297,12 @@ func TestBrokenTLS_RequireClientCertButNonePresented(t *testing.T) { e.Close() t.Fatal("expecting TLS failure setting up server and client") } - if !strings.Contains(err.Error(), "bad certificate") { - t.Fatalf("expecting TLS certificate error, got: %v", err) + // Check for either the old error (Go <=1.24) or the new one (Go 1.25+) + // Go 1.24: "bad certificate" + // Go 1.25: "handshake failure" + errMsg := err.Error() + if !strings.Contains(errMsg, "bad certificate") && !strings.Contains(errMsg, "handshake failure") { + t.Fatalf("expecting a specific TLS certificate or handshake error, got: %v", err) } }