Skip to content

Commit cdf9cae

Browse files
committed
fix: add more tests for un-retryable scenarios
1 parent 535503c commit cdf9cae

File tree

1 file changed

+48
-3
lines changed

1 file changed

+48
-3
lines changed

docker_test.go

Lines changed: 48 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2102,10 +2102,30 @@ func TestDockerProvider_BuildImage_Retries(t *testing.T) {
21022102
shouldRetry: false,
21032103
},
21042104
{
2105-
name: "no retry on permanent error",
2105+
name: "no retry when a resource is not found",
2106+
errReturned: errdefs.NotFound(errors.New("not available")),
2107+
shouldRetry: false,
2108+
},
2109+
{
2110+
name: "no retry when parameters are invalid",
21062111
errReturned: errdefs.InvalidParameter(errors.New("invalid")),
21072112
shouldRetry: false,
21082113
},
2114+
{
2115+
name: "no retry when resource access not authorized",
2116+
errReturned: errdefs.Unauthorized(errors.New("not authorized")),
2117+
shouldRetry: false,
2118+
},
2119+
{
2120+
name: "no retry when resource access is forbidden",
2121+
errReturned: errdefs.Forbidden(errors.New("forbidden")),
2122+
shouldRetry: false,
2123+
},
2124+
{
2125+
name: "no retry when not implemented by provider",
2126+
errReturned: errdefs.NotImplemented(errors.New("unkown method")),
2127+
shouldRetry: false,
2128+
},
21092129
{
21102130
name: "retry on non-permanent error",
21112131
errReturned: errors.New("whoops"),
@@ -2143,10 +2163,15 @@ func TestDockerProvider_waitContainerCreation_retries(t *testing.T) {
21432163
shouldRetry: false,
21442164
},
21452165
{
2146-
name: "no retry on permanent error",
2166+
name: "no retry when parameters are invalid",
21472167
errReturned: errdefs.InvalidParameter(errors.New("invalid")),
21482168
shouldRetry: false,
21492169
},
2170+
{
2171+
name: "no retry when not implemented by provider",
2172+
errReturned: errdefs.NotImplemented(errors.New("unkown method")),
2173+
shouldRetry: false,
2174+
},
21502175
{
21512176
name: "retry when not found",
21522177
errReturned: errdefs.NotFound(errors.New("not there yet")),
@@ -2189,10 +2214,30 @@ func TestDockerProvider_attemptToPullImage_retries(t *testing.T) {
21892214
shouldRetry: false,
21902215
},
21912216
{
2192-
name: "no retry on permanent error",
2217+
name: "no retry when a resource is not found",
21932218
errReturned: errdefs.NotFound(errors.New("not available")),
21942219
shouldRetry: false,
21952220
},
2221+
{
2222+
name: "no retry when parameters are invalid",
2223+
errReturned: errdefs.InvalidParameter(errors.New("invalid")),
2224+
shouldRetry: false,
2225+
},
2226+
{
2227+
name: "no retry when resource access not authorized",
2228+
errReturned: errdefs.Unauthorized(errors.New("not authorized")),
2229+
shouldRetry: false,
2230+
},
2231+
{
2232+
name: "no retry when resource access is forbidden",
2233+
errReturned: errdefs.Forbidden(errors.New("forbidden")),
2234+
shouldRetry: false,
2235+
},
2236+
{
2237+
name: "no retry when not implemented by provider",
2238+
errReturned: errdefs.NotImplemented(errors.New("unkown method")),
2239+
shouldRetry: false,
2240+
},
21962241
{
21972242
name: "retry on non-permanent error",
21982243
errReturned: errors.New("whoops"),

0 commit comments

Comments
 (0)