1717package completion
1818
1919import (
20+ "os/exec"
2021 "testing"
2122
2223 "github.com/containerd/nerdctl/mod/tigron/expect"
@@ -34,6 +35,11 @@ func TestMain(m *testing.M) {
3435func TestCompletion (t * testing.T ) {
3536 nerdtest .Setup ()
3637
38+ // Note: some functions need to be tested without the automatic --namespace nerdctl-test argument, so we need
39+ // to retrieve the binary name.
40+ // Note that we know this works already, so no need to assert err.
41+ bin , _ := exec .LookPath (testutil .GetTarget ())
42+
3743 testCase := & test.Case {
3844 Require : require .Not (nerdtest .Docker ),
3945 Setup : func (data test.Data , helpers test.Helpers ) {
@@ -158,25 +164,25 @@ func TestCompletion(t *testing.T) {
158164 },
159165 },
160166 {
161- Description : "no namespace --cgroup-manager" ,
167+ Description : "--cgroup-manager" ,
162168 Require : require .Not (require .Windows ),
163169 Command : func (data test.Data , helpers test.Helpers ) test.TestableCommand {
164- return helpers .Custom ( "nerdctl" , "__complete" , "--cgroup-manager" , "" )
170+ return helpers .Command ( "__complete" , "--cgroup-manager" , "" )
165171 },
166172 Expected : test .Expects (0 , nil , expect .Contains ("cgroupfs\n " )),
167173 },
168174 {
169- Description : "no namespace empty" ,
175+ Description : "empty" ,
170176 Command : func (data test.Data , helpers test.Helpers ) test.TestableCommand {
171- return helpers .Custom ( "nerdctl" , "__complete" , "" )
177+ return helpers .Command ( "__complete" , "" )
172178 },
173179 Expected : test .Expects (0 , nil , expect .Contains ("run\t " )),
174180 },
175181 {
176182 Description : "namespace space empty" ,
177183 Command : func (data test.Data , helpers test.Helpers ) test.TestableCommand {
178184 // mind {"--namespace=nerdctl-test"} vs {"--namespace", "nerdctl-test"}
179- return helpers .Custom ("nerdctl" , "__complete" , "--namespace" , string (helpers .Read (nerdtest .Namespace )), "" )
185+ return helpers .Custom (bin , "__complete" , "--namespace" , string (helpers .Read (nerdtest .Namespace )), "" )
180186 },
181187 Expected : test .Expects (0 , nil , expect .Contains ("run\t " )),
182188 },
@@ -199,7 +205,7 @@ func TestCompletion(t *testing.T) {
199205 Description : "namespace run -i" ,
200206 Command : func (data test.Data , helpers test.Helpers ) test.TestableCommand {
201207 // mind {"--namespace=nerdctl-test"} vs {"--namespace", "nerdctl-test"}
202- return helpers .Custom ("nerdctl" , "__complete" , "--namespace" , string (helpers .Read (nerdtest .Namespace )), "run" , "-i" , "" )
208+ return helpers .Custom (bin , "__complete" , "--namespace" , string (helpers .Read (nerdtest .Namespace )), "run" , "-i" , "" )
203209 },
204210 Expected : test .Expects (0 , nil , expect .Contains (testutil .CommonImage + "\n " )),
205211 },
0 commit comments