Merge pull request #51314 from austinvazquez/refactor-client-container-list

client: refactor `ContainerList` to wrap result
This commit is contained in:
Sebastiaan van Stijn
2025-10-29 08:31:22 +01:00
committed by GitHub
17 changed files with 68 additions and 60 deletions

View File

@@ -88,14 +88,14 @@ func (d *Daemon) CheckActiveContainerCount(ctx context.Context) func(t *testing.
apiClient, err := client.NewClientWithOpts(client.FromEnv, client.WithHost(d.Sock()))
assert.NilError(t, err)
ctrs, err := apiClient.ContainerList(ctx, client.ContainerListOptions{})
list, err := apiClient.ContainerList(ctx, client.ContainerListOptions{})
_ = apiClient.Close()
assert.NilError(t, err)
var out strings.Builder
for _, ctr := range ctrs {
for _, ctr := range list.Items {
out.WriteString(stringid.TruncateID(ctr.ID) + "\n")
}
return len(ctrs), out.String()
return len(list.Items), out.String()
}
}

View File

@@ -42,12 +42,12 @@ func (s *DockerAPISuite) TestContainerAPIGetAll(c *testing.T) {
defer apiClient.Close()
ctx := testutil.GetContext(c)
containers, err := apiClient.ContainerList(ctx, client.ContainerListOptions{
list, err := apiClient.ContainerList(ctx, client.ContainerListOptions{
All: true,
})
assert.NilError(c, err)
assert.Equal(c, len(containers), startCount+1)
actual := containers[0].Names[0]
assert.Equal(c, len(list.Items), startCount+1)
actual := list.Items[0].Names[0]
assert.Equal(c, actual, "/"+name)
}
@@ -64,10 +64,10 @@ func (s *DockerAPISuite) TestContainerAPIGetJSONNoFieldsOmitted(c *testing.T) {
All: true,
}
ctx := testutil.GetContext(c)
containers, err := apiClient.ContainerList(ctx, options)
list, err := apiClient.ContainerList(ctx, options)
assert.NilError(c, err)
assert.Equal(c, len(containers), startCount+1)
actual := fmt.Sprintf("%+v", containers[0])
assert.Equal(c, len(list.Items), startCount+1)
actual := fmt.Sprintf("%+v", list.Items[0])
// empty Labels field triggered this bug, make sense to check for everything
// cause even Ports for instance can trigger this bug