| // +build !windows |
| |
| package main |
| |
| import ( |
| "strings" |
| |
| "github.com/docker/docker/pkg/integration/checker" |
| "github.com/go-check/check" |
| ) |
| |
| func (s *DockerSuite) TestApiUpdateContainer(c *check.C) { |
| testRequires(c, DaemonIsLinux) |
| testRequires(c, memoryLimitSupport) |
| testRequires(c, swapMemorySupport) |
| |
| name := "apiUpdateContainer" |
| hostConfig := map[string]interface{}{ |
| "Memory": 314572800, |
| "MemorySwap": 524288000, |
| } |
| dockerCmd(c, "run", "-d", "--name", name, "-m", "200M", "busybox", "top") |
| _, _, err := sockRequest("POST", "/containers/"+name+"/update", hostConfig) |
| c.Assert(err, check.IsNil) |
| |
| c.Assert(inspectField(c, name, "HostConfig.Memory"), checker.Equals, "314572800") |
| file := "/sys/fs/cgroup/memory/memory.limit_in_bytes" |
| out, _ := dockerCmd(c, "exec", name, "cat", file) |
| c.Assert(strings.TrimSpace(out), checker.Equals, "314572800") |
| |
| c.Assert(inspectField(c, name, "HostConfig.MemorySwap"), checker.Equals, "524288000") |
| file = "/sys/fs/cgroup/memory/memory.memsw.limit_in_bytes" |
| out, _ = dockerCmd(c, "exec", name, "cat", file) |
| c.Assert(strings.TrimSpace(out), checker.Equals, "524288000") |
| } |