mirror of
https://github.com/moby/moby.git
synced 2026-01-11 18:51:37 +00:00
client: refactor ContainerList to wrap result
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
This commit is contained in:
@@ -62,7 +62,7 @@ type ContainerAPIClient interface {
|
||||
ContainerExport(ctx context.Context, container string) (io.ReadCloser, error)
|
||||
ContainerInspect(ctx context.Context, container string, options ContainerInspectOptions) (ContainerInspectResult, error)
|
||||
ContainerKill(ctx context.Context, container string, options ContainerKillOptions) (ContainerKillResult, error)
|
||||
ContainerList(ctx context.Context, options ContainerListOptions) ([]container.Summary, error)
|
||||
ContainerList(ctx context.Context, options ContainerListOptions) (ContainerListResult, error)
|
||||
ContainerLogs(ctx context.Context, container string, options ContainerLogsOptions) (io.ReadCloser, error)
|
||||
ContainerPause(ctx context.Context, container string, options ContainerPauseOptions) (ContainerPauseResult, error)
|
||||
ContainerRemove(ctx context.Context, container string, options ContainerRemoveOptions) (ContainerRemoveResult, error)
|
||||
|
||||
@@ -20,8 +20,12 @@ type ContainerListOptions struct {
|
||||
Filters Filters
|
||||
}
|
||||
|
||||
type ContainerListResult struct {
|
||||
Items []container.Summary
|
||||
}
|
||||
|
||||
// ContainerList returns the list of containers in the docker host.
|
||||
func (cli *Client) ContainerList(ctx context.Context, options ContainerListOptions) ([]container.Summary, error) {
|
||||
func (cli *Client) ContainerList(ctx context.Context, options ContainerListOptions) (ContainerListResult, error) {
|
||||
query := url.Values{}
|
||||
|
||||
if options.All {
|
||||
@@ -49,10 +53,10 @@ func (cli *Client) ContainerList(ctx context.Context, options ContainerListOptio
|
||||
resp, err := cli.get(ctx, "/containers/json", query, nil)
|
||||
defer ensureReaderClosed(resp)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
return ContainerListResult{}, err
|
||||
}
|
||||
|
||||
var containers []container.Summary
|
||||
err = json.NewDecoder(resp.Body).Decode(&containers)
|
||||
return containers, err
|
||||
return ContainerListResult{Items: containers}, err
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ func TestContainerList(t *testing.T) {
|
||||
)
|
||||
assert.NilError(t, err)
|
||||
|
||||
containers, err := client.ContainerList(context.Background(), ContainerListOptions{
|
||||
list, err := client.ContainerList(context.Background(), ContainerListOptions{
|
||||
Size: true,
|
||||
All: true,
|
||||
Since: "container",
|
||||
@@ -75,5 +75,5 @@ func TestContainerList(t *testing.T) {
|
||||
Add("before", "container"),
|
||||
})
|
||||
assert.NilError(t, err)
|
||||
assert.Check(t, is.Len(containers, 2))
|
||||
assert.Check(t, is.Len(list.Items, 2))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user