@@ -20,7 +20,6 @@ import (
2020 "errors"
2121 "fmt"
2222 "net/http"
23- "strings"
2423 "testing"
2524
2625 "gotest.tools/v3/assert"
@@ -31,33 +30,43 @@ import (
3130
3231 "github.com/containerd/nerdctl/v2/pkg/testutil"
3332 "github.com/containerd/nerdctl/v2/pkg/testutil/nerdtest"
34- "github.com/containerd/nerdctl/v2/pkg/testutil/testregistry "
33+ "github.com/containerd/nerdctl/v2/pkg/testutil/nerdtest/registry "
3534)
3635
3736func TestPush (t * testing.T ) {
3837 nerdtest .Setup ()
3938
40- var registryNoAuthHTTPRandom , registryNoAuthHTTPDefault , registryTokenAuthHTTPSRandom * testregistry.RegistryServer
39+ var registryNoAuthHTTPRandom , registryNoAuthHTTPDefault , registryTokenAuthHTTPSRandom * registry.Server
40+ var tokenServer * registry.TokenAuthServer
4141
4242 testCase := & test.Case {
43- Require : require .Linux ,
43+ Require : require .All (
44+ require .Linux ,
45+ nerdtest .Registry ,
46+ ),
4447
4548 Setup : func (data test.Data , helpers test.Helpers ) {
46- base := testutil .NewBase (t )
47- registryNoAuthHTTPRandom = testregistry .NewWithNoAuth (base , 0 , false )
48- registryNoAuthHTTPDefault = testregistry .NewWithNoAuth (base , 80 , false )
49- registryTokenAuthHTTPSRandom = testregistry .NewWithTokenAuth (base , "admin" , "badmin" , 0 , true )
49+ registryNoAuthHTTPRandom = nerdtest .RegistryWithNoAuth (data , helpers , 0 , false )
50+ registryNoAuthHTTPRandom .Setup (data , helpers )
51+ registryNoAuthHTTPDefault = nerdtest .RegistryWithNoAuth (data , helpers , 80 , false )
52+ registryNoAuthHTTPDefault .Setup (data , helpers )
53+ registryTokenAuthHTTPSRandom , tokenServer = nerdtest .RegistryWithTokenAuth (data , helpers , "admin" , "badmin" , 0 , true )
54+ tokenServer .Setup (data , helpers )
55+ registryTokenAuthHTTPSRandom .Setup (data , helpers )
5056 },
5157
5258 Cleanup : func (data test.Data , helpers test.Helpers ) {
5359 if registryNoAuthHTTPRandom != nil {
54- registryNoAuthHTTPRandom .Cleanup (nil )
60+ registryNoAuthHTTPRandom .Cleanup (data , helpers )
5561 }
5662 if registryNoAuthHTTPDefault != nil {
57- registryNoAuthHTTPDefault .Cleanup (nil )
63+ registryNoAuthHTTPDefault .Cleanup (data , helpers )
5864 }
5965 if registryTokenAuthHTTPSRandom != nil {
60- registryTokenAuthHTTPSRandom .Cleanup (nil )
66+ registryTokenAuthHTTPSRandom .Cleanup (data , helpers )
67+ }
68+ if tokenServer != nil {
69+ tokenServer .Cleanup (data , helpers )
6170 }
6271 },
6372
@@ -66,8 +75,8 @@ func TestPush(t *testing.T) {
6675 Description : "plain http" ,
6776 Setup : func (data test.Data , helpers test.Helpers ) {
6877 helpers .Ensure ("pull" , "--quiet" , testutil .CommonImage )
69- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
70- registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier (), strings . Split ( testutil . CommonImage , ":" )[ 1 ] )
78+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
79+ registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier ())
7180 data .Labels ().Set ("testImageRef" , testImageRef )
7281 helpers .Ensure ("tag" , testutil .CommonImage , testImageRef )
7382 },
@@ -86,8 +95,8 @@ func TestPush(t *testing.T) {
8695 Require : require .Not (nerdtest .Docker ),
8796 Setup : func (data test.Data , helpers test.Helpers ) {
8897 helpers .Ensure ("pull" , "--quiet" , testutil .CommonImage )
89- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
90- registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier (), strings . Split ( testutil . CommonImage , ":" )[ 1 ] )
98+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
99+ registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier ())
91100 data .Labels ().Set ("testImageRef" , testImageRef )
92101 helpers .Ensure ("tag" , testutil .CommonImage , testImageRef )
93102 },
@@ -105,8 +114,8 @@ func TestPush(t *testing.T) {
105114 Description : "plain http with localhost" ,
106115 Setup : func (data test.Data , helpers test.Helpers ) {
107116 helpers .Ensure ("pull" , "--quiet" , testutil .CommonImage )
108- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
109- "127.0.0.1" , registryNoAuthHTTPRandom .Port , data .Identifier (), strings . Split ( testutil . CommonImage , ":" )[ 1 ] )
117+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
118+ "127.0.0.1" , registryNoAuthHTTPRandom .Port , data .Identifier ())
110119 data .Labels ().Set ("testImageRef" , testImageRef )
111120 helpers .Ensure ("tag" , testutil .CommonImage , testImageRef )
112121 },
@@ -120,8 +129,8 @@ func TestPush(t *testing.T) {
120129 Require : require .Not (nerdtest .Docker ),
121130 Setup : func (data test.Data , helpers test.Helpers ) {
122131 helpers .Ensure ("pull" , "--quiet" , testutil .CommonImage )
123- testImageRef := fmt .Sprintf ("%s/%s:%s " ,
124- registryNoAuthHTTPDefault .IP .String (), data .Identifier (), strings . Split ( testutil . CommonImage , ":" )[ 1 ] )
132+ testImageRef := fmt .Sprintf ("%s/%s" ,
133+ registryNoAuthHTTPDefault .IP .String (), data .Identifier ())
125134 data .Labels ().Set ("testImageRef" , testImageRef )
126135 helpers .Ensure ("tag" , testutil .CommonImage , testImageRef )
127136 },
@@ -140,8 +149,8 @@ func TestPush(t *testing.T) {
140149 Require : require .Not (nerdtest .Docker ),
141150 Setup : func (data test.Data , helpers test.Helpers ) {
142151 helpers .Ensure ("pull" , "--quiet" , testutil .CommonImage )
143- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
144- registryTokenAuthHTTPSRandom .IP .String (), registryTokenAuthHTTPSRandom .Port , data .Identifier (), strings . Split ( testutil . CommonImage , ":" )[ 1 ] )
152+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
153+ registryTokenAuthHTTPSRandom .IP .String (), registryTokenAuthHTTPSRandom .Port , data .Identifier ())
145154 data .Labels ().Set ("testImageRef" , testImageRef )
146155 helpers .Ensure ("tag" , testutil .CommonImage , testImageRef )
147156 helpers .Ensure ("--insecure-registry" , "login" , "-u" , "admin" , "-p" , "badmin" ,
@@ -163,8 +172,8 @@ func TestPush(t *testing.T) {
163172 Require : require .Not (nerdtest .Docker ),
164173 Setup : func (data test.Data , helpers test.Helpers ) {
165174 helpers .Ensure ("pull" , "--quiet" , testutil .CommonImage )
166- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
167- registryTokenAuthHTTPSRandom .IP .String (), registryTokenAuthHTTPSRandom .Port , data .Identifier (), strings . Split ( testutil . CommonImage , ":" )[ 1 ] )
175+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
176+ registryTokenAuthHTTPSRandom .IP .String (), registryTokenAuthHTTPSRandom .Port , data .Identifier ())
168177 data .Labels ().Set ("testImageRef" , testImageRef )
169178 helpers .Ensure ("tag" , testutil .CommonImage , testImageRef )
170179 helpers .Ensure ("--hosts-dir" , registryTokenAuthHTTPSRandom .HostsDir , "login" , "-u" , "admin" , "-p" , "badmin" ,
@@ -186,8 +195,8 @@ func TestPush(t *testing.T) {
186195 Require : require .Not (nerdtest .Docker ),
187196 Setup : func (data test.Data , helpers test.Helpers ) {
188197 helpers .Ensure ("pull" , "--quiet" , testutil .NonDistBlobImage )
189- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
190- registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier (), strings . Split ( testutil . NonDistBlobImage , ":" )[ 1 ] )
198+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
199+ registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier ())
191200 data .Labels ().Set ("testImageRef" , testImageRef )
192201 helpers .Ensure ("tag" , testutil .NonDistBlobImage , testImageRef )
193202 },
@@ -206,7 +215,7 @@ func TestPush(t *testing.T) {
206215 resp , err := http .Get (blobURL )
207216 assert .Assert (t , err , "error making http request" )
208217 if resp .Body != nil {
209- resp .Body .Close ()
218+ _ = resp .Body .Close ()
210219 }
211220 assert .Equal (t , resp .StatusCode , http .StatusNotFound , "non-distributable blob should not be available" )
212221 },
@@ -218,8 +227,8 @@ func TestPush(t *testing.T) {
218227 Require : require .Not (nerdtest .Docker ),
219228 Setup : func (data test.Data , helpers test.Helpers ) {
220229 helpers .Ensure ("pull" , "--quiet" , testutil .NonDistBlobImage )
221- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
222- registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier (), strings . Split ( testutil . NonDistBlobImage , ":" )[ 1 ] )
230+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
231+ registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier ())
223232 data .Labels ().Set ("testImageRef" , testImageRef )
224233 helpers .Ensure ("tag" , testutil .NonDistBlobImage , testImageRef )
225234 },
@@ -238,7 +247,7 @@ func TestPush(t *testing.T) {
238247 resp , err := http .Get (blobURL )
239248 assert .Assert (t , err , "error making http request" )
240249 if resp .Body != nil {
241- resp .Body .Close ()
250+ _ = resp .Body .Close ()
242251 }
243252 assert .Equal (t , resp .StatusCode , http .StatusOK , "non-distributable blob should be available" )
244253 },
@@ -253,8 +262,8 @@ func TestPush(t *testing.T) {
253262 ),
254263 Setup : func (data test.Data , helpers test.Helpers ) {
255264 helpers .Ensure ("pull" , "--quiet" , testutil .UbuntuImage )
256- testImageRef := fmt .Sprintf ("%s:%d/%s:%s " ,
257- registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier (), strings . Split ( testutil . UbuntuImage , ":" )[ 1 ] )
265+ testImageRef := fmt .Sprintf ("%s:%d/%s" ,
266+ registryNoAuthHTTPRandom .IP .String (), registryNoAuthHTTPRandom .Port , data .Identifier ())
258267 data .Labels ().Set ("testImageRef" , testImageRef )
259268 helpers .Ensure ("tag" , testutil .UbuntuImage , testImageRef )
260269 },
0 commit comments