Skip to content

Commit c8014ec

Browse files
committed
cli/command/network: TestNetworkCreateErrors: use sub-tests
Signed-off-by: Sebastiaan van Stijn <[email protected]>
1 parent 413ee12 commit c8014ec

File tree

1 file changed

+30
-11
lines changed

1 file changed

+30
-11
lines changed

cli/command/network/create_test.go

Lines changed: 30 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -137,18 +137,37 @@ func TestNetworkCreateErrors(t *testing.T) {
137137
}
138138

139139
for _, tc := range testCases {
140-
cmd := newCreateCommand(
141-
test.NewFakeCli(&fakeClient{
142-
networkCreateFunc: tc.networkCreateFunc,
143-
}),
144-
)
145-
cmd.SetArgs(tc.args)
146-
for key, value := range tc.flags {
147-
assert.NilError(t, cmd.Flags().Set(key, value))
140+
var args []string
141+
for flag, val := range tc.flags {
142+
args = append(args, flag+"="+val)
148143
}
149-
cmd.SetOut(io.Discard)
150-
cmd.SetErr(io.Discard)
151-
assert.ErrorContains(t, cmd.Execute(), tc.expectedError)
144+
if len(tc.args) > 0 {
145+
args = append(args, tc.args...)
146+
}
147+
var name string
148+
if len(args) == 0 {
149+
name = "no args"
150+
} else {
151+
name = strings.Join(args, ",")
152+
}
153+
t.Run(name, func(t *testing.T) {
154+
cmd := newCreateCommand(
155+
test.NewFakeCli(&fakeClient{
156+
networkCreateFunc: tc.networkCreateFunc,
157+
}),
158+
)
159+
if len(tc.args) == 0 {
160+
cmd.SetArgs([]string{})
161+
} else {
162+
cmd.SetArgs(tc.args)
163+
}
164+
for key, value := range tc.flags {
165+
assert.NilError(t, cmd.Flags().Set(key, value))
166+
}
167+
cmd.SetOut(io.Discard)
168+
cmd.SetErr(io.Discard)
169+
assert.ErrorContains(t, cmd.Execute(), tc.expectedError)
170+
})
152171
}
153172
}
154173

0 commit comments

Comments
 (0)