summaryrefslogtreecommitdiff
path: root/integration-cli/docker_api_images_test.go
diff options
context:
space:
mode:
authorStanislav Bondarenko <stanislav.bondarenko@gmail.com>2017-05-23 23:56:26 -0400
committerStanislav Bondarenko <stanislav.bondarenko@gmail.com>2017-08-23 17:10:04 -0400
commit0fd5a654280ef509a6512f84981f28d559869b90 (patch)
tree0e2cfb768f184d90f129564fc79d420b72e2919f /integration-cli/docker_api_images_test.go
parentcdf870bd0b5fa678b10ef2708cca7ad776b4913c (diff)
downloaddocker-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.go77
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 {