attempt to fix flaky TestClientProxyReadOk (#6899)

Signed-off-by: hagen1778 <roman@victoriametrics.com>
(cherry picked from commit f586082520)
This commit is contained in:
Roman Khavronenko 2024-08-30 13:23:32 +02:00 committed by hagen1778
parent 1aa9f7be4e
commit 71e592e677
No known key found for this signature in database
GPG Key ID: 3BF75F3741CA9640

View File

@ -3,6 +3,7 @@ package promscrape
import (
"context"
"encoding/base64"
"errors"
"fmt"
"io"
"net"
@ -133,18 +134,29 @@ func TestClientProxyReadOk(t *testing.T) {
defer ps.Close()
c, err := newClient(ctx, &ScrapeWork{
ScrapeURL: backend.URL,
ProxyURL: proxy.MustNewURL(ps.URL),
ScrapeTimeout: 2 * time.Second,
AuthConfig: newTestAuthConfig(t, isBackendTLS, backendAuth),
ProxyAuthConfig: newTestAuthConfig(t, isProxyTLS, proxyAuth),
MaxScrapeSize: 16000,
ScrapeURL: backend.URL,
ProxyURL: proxy.MustNewURL(ps.URL),
// bump timeout for slow CIs
ScrapeTimeout: 5 * time.Second,
// force connection re-creating to avoid broken conns in slow CIs
DisableKeepAlive: true,
AuthConfig: newTestAuthConfig(t, isBackendTLS, backendAuth),
ProxyAuthConfig: newTestAuthConfig(t, isProxyTLS, proxyAuth),
MaxScrapeSize: 16000,
})
if err != nil {
t.Fatalf("failed to create client: %s", err)
}
var bb bytesutil.ByteBuffer
if err := c.ReadData(&bb); err != nil {
err = c.ReadData(&bb)
if errors.Is(err, io.EOF) {
bb.Reset()
// EOF could occur in slow envs, like CI
err = c.ReadData(&bb)
}
if err != nil {
t.Fatalf("unexpected error at ReadData: %s", err)
}
got, err := io.ReadAll(bb.NewReader())