diff options
author | Stanislav Bondarenko <stanislav.bondarenko@gmail.com> | 2017-05-23 23:56:26 -0400 |
---|---|---|
committer | Stanislav Bondarenko <stanislav.bondarenko@gmail.com> | 2017-08-23 17:10:04 -0400 |
commit | 0fd5a654280ef509a6512f84981f28d559869b90 (patch) | |
tree | 0e2cfb768f184d90f129564fc79d420b72e2919f /integration-cli/docker_api_images_test.go | |
parent | cdf870bd0b5fa678b10ef2708cca7ad776b4913c (diff) | |
download | docker-0fd5a654280ef509a6512f84981f28d559869b90.tar.gz |
Stop using deprecated SockRequest
Signed-off-by: Stanislav Bondarenko <stanislav.bondarenko@gmail.com>
Diffstat (limited to 'integration-cli/docker_api_images_test.go')
-rw-r--r-- | integration-cli/docker_api_images_test.go | 77 |
1 files changed, 40 insertions, 37 deletions
diff --git a/integration-cli/docker_api_images_test.go b/integration-cli/docker_api_images_test.go index 0cdd50685a..8ad12fb77d 100644 --- a/integration-cli/docker_api_images_test.go +++ b/integration-cli/docker_api_images_test.go @@ -1,38 +1,40 @@ package main import ( - "encoding/json" "net/http" "net/http/httptest" - "net/url" "strings" "github.com/docker/docker/api/types" - "github.com/docker/docker/api/types/image" + "github.com/docker/docker/api/types/filters" + "github.com/docker/docker/client" "github.com/docker/docker/integration-cli/checker" "github.com/docker/docker/integration-cli/cli" "github.com/docker/docker/integration-cli/cli/build" "github.com/docker/docker/integration-cli/request" "github.com/go-check/check" + "golang.org/x/net/context" ) func (s *DockerSuite) TestAPIImagesFilter(c *check.C) { + cli, err := client.NewEnvClient() + c.Assert(err, checker.IsNil) + defer cli.Close() + name := "utest:tag1" name2 := "utest/docker:tag2" name3 := "utest:5000/docker:tag3" for _, n := range []string{name, name2, name3} { dockerCmd(c, "tag", "busybox", n) } - type image types.ImageSummary - getImages := func(filter string) []image { - v := url.Values{} - v.Set("filter", filter) - status, b, err := request.SockRequest("GET", "/images/json?"+v.Encode(), nil, daemonHost()) - c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusOK) - - var images []image - err = json.Unmarshal(b, &images) + getImages := func(filter string) []types.ImageSummary { + filters := filters.NewArgs() + filters.Add("reference", filter) + options := types.ImageListOptions{ + All: false, + Filters: filters, + } + images, err := cli.ImageList(context.Background(), options) c.Assert(err, checker.IsNil) return images @@ -74,6 +76,10 @@ func (s *DockerSuite) TestAPIImagesSaveAndLoad(c *check.C) { } func (s *DockerSuite) TestAPIImagesDelete(c *check.C) { + cli, err := client.NewEnvClient() + c.Assert(err, checker.IsNil) + defer cli.Close() + if testEnv.DaemonPlatform() != "windows" { testRequires(c, Network) } @@ -83,20 +89,21 @@ func (s *DockerSuite) TestAPIImagesDelete(c *check.C) { dockerCmd(c, "tag", name, "test:tag1") - status, _, err := request.SockRequest("DELETE", "/images/"+id, nil, daemonHost()) - c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusConflict) + _, err = cli.ImageRemove(context.Background(), id, types.ImageRemoveOptions{}) + c.Assert(err.Error(), checker.Contains, "unable to delete") - status, _, err = request.SockRequest("DELETE", "/images/test:noexist", nil, daemonHost()) - c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusNotFound) //Status Codes:404 – no such image + _, err = cli.ImageRemove(context.Background(), "test:noexist", types.ImageRemoveOptions{}) + c.Assert(err.Error(), checker.Contains, "No such image") - status, _, err = request.SockRequest("DELETE", "/images/test:tag1", nil, daemonHost()) + _, err = cli.ImageRemove(context.Background(), "test:tag1", types.ImageRemoveOptions{}) c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusOK) } func (s *DockerSuite) TestAPIImagesHistory(c *check.C) { + cli, err := client.NewEnvClient() + c.Assert(err, checker.IsNil) + defer cli.Close() + if testEnv.DaemonPlatform() != "windows" { testRequires(c, Network) } @@ -104,13 +111,8 @@ func (s *DockerSuite) TestAPIImagesHistory(c *check.C) { buildImageSuccessfully(c, name, build.WithDockerfile("FROM busybox\nENV FOO bar")) id := getIDByName(c, name) - status, body, err := request.SockRequest("GET", "/images/"+id+"/history", nil, daemonHost()) + historydata, err := cli.ImageHistory(context.Background(), id) c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusOK) - - var historydata []image.HistoryResponseItem - err = json.Unmarshal(body, &historydata) - c.Assert(err, checker.IsNil, check.Commentf("Error on unmarshal")) c.Assert(historydata, checker.Not(checker.HasLen), 0) c.Assert(historydata[0].Tags[0], checker.Equals, "test-api-images-history:latest") @@ -133,9 +135,8 @@ func (s *DockerSuite) TestAPIImagesImportBadSrc(c *check.C) { } for _, te := range tt { - res, b, err := request.SockRequestRaw("POST", strings.Join([]string{"/images/create?fromSrc=", te.fromSrc}, ""), nil, "application/json", daemonHost()) + res, _, err := request.Post(strings.Join([]string{"/images/create?fromSrc=", te.fromSrc}, ""), request.JSON) c.Assert(err, check.IsNil) - b.Close() c.Assert(res.StatusCode, checker.Equals, te.statusExp) c.Assert(res.Header.Get("Content-Type"), checker.Equals, "application/json") } @@ -156,11 +157,11 @@ func (s *DockerSuite) TestAPIImagesSearchJSONContentType(c *check.C) { // Test case for 30027: image size reported as -1 in v1.12 client against v1.13 daemon. // This test checks to make sure both v1.12 and v1.13 client against v1.13 daemon get correct `Size` after the fix. func (s *DockerSuite) TestAPIImagesSizeCompatibility(c *check.C) { - status, b, err := request.SockRequest("GET", "/images/json", nil, daemonHost()) + cli, err := client.NewEnvClient() c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusOK) - var images []types.ImageSummary - err = json.Unmarshal(b, &images) + defer cli.Close() + + images, err := cli.ImageList(context.Background(), types.ImageListOptions{}) c.Assert(err, checker.IsNil) c.Assert(len(images), checker.Not(checker.Equals), 0) for _, image := range images { @@ -177,11 +178,13 @@ func (s *DockerSuite) TestAPIImagesSizeCompatibility(c *check.C) { VirtualSize int64 Labels map[string]string } - status, b, err = request.SockRequest("GET", "/v1.24/images/json", nil, daemonHost()) + + var httpClient *http.Client + cli, err = client.NewClient(daemonHost(), "v1.24", httpClient, nil) c.Assert(err, checker.IsNil) - c.Assert(status, checker.Equals, http.StatusOK) - var v124Images []v124Image - err = json.Unmarshal(b, &v124Images) + defer cli.Close() + + v124Images, err := cli.ImageList(context.Background(), types.ImageListOptions{}) c.Assert(err, checker.IsNil) c.Assert(len(v124Images), checker.Not(checker.Equals), 0) for _, image := range v124Images { |