Skip to content

Commit 28706cb

Browse files
authored
Merge pull request #455 from funvit/fix/flaky-test
fix: temp fix of flaky test
2 parents 82b7734 + 25da222 commit 28706cb

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

logconsumer_test.go

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package testcontainers
22

33
import (
44
"context"
5+
"errors"
56
"fmt"
67
"net/http"
78
"testing"
@@ -201,13 +202,29 @@ func TestContainerLogWithErrClosed(t *testing.T) {
201202
},
202203
})
203204
if err != nil {
204-
t.Fatal(err)
205+
t.Fatal("create generic container:", err)
205206
}
206207
defer dind.Terminate(ctx)
207208

208-
remoteDocker, err := dind.Endpoint(ctx, "2375/tcp")
209+
var remoteDocker string
210+
211+
ctxEndpoint, cancel := context.WithTimeout(ctx, 5*time.Second)
212+
defer cancel()
213+
214+
// todo: remove this temporary fix (test is flaky).
215+
for {
216+
remoteDocker, err = dind.Endpoint(ctxEndpoint, "2375/tcp")
217+
if err == nil {
218+
break
219+
}
220+
if errors.Is(err, context.DeadlineExceeded) {
221+
break
222+
}
223+
time.Sleep(100 * time.Microsecond)
224+
t.Log("retrying get endpoint")
225+
}
209226
if err != nil {
210-
t.Fatal(err)
227+
t.Fatal("get endpoint:", err)
211228
}
212229

213230
client, err := client.NewClientWithOpts(client.WithHost(remoteDocker))

0 commit comments

Comments
 (0)