(t *testing.T)
| 185 | } |
| 186 | |
| 187 | func TestScaleDownNoRecreate(t *testing.T) { |
| 188 | const projectName = "scale-down-recreated-test" |
| 189 | c := NewCLI(t, WithEnv( |
| 190 | "COMPOSE_PROJECT_NAME="+projectName)) |
| 191 | |
| 192 | reset := func() { |
| 193 | c.RunDockerComposeCmd(t, "down", "--rmi", "all") |
| 194 | } |
| 195 | t.Cleanup(reset) |
| 196 | c.RunDockerComposeCmd(t, "-f", "fixtures/scale/build.yaml", "build", "--build-arg", "FOO=test") |
| 197 | c.RunDockerComposeCmd(t, "-f", "fixtures/scale/build.yaml", "up", "-d", "--scale", "test=2") |
| 198 | |
| 199 | c.RunDockerComposeCmd(t, "-f", "fixtures/scale/build.yaml", "build", "--build-arg", "FOO=updated") |
| 200 | c.RunDockerComposeCmd(t, "-f", "fixtures/scale/build.yaml", "up", "-d", "--scale", "test=4", "--no-recreate") |
| 201 | |
| 202 | res := c.RunDockerComposeCmd(t, "ps", "--format", "{{.Name}}", "test") |
| 203 | res.Assert(t, icmd.Success) |
| 204 | assert.Check(t, strings.Contains(res.Stdout(), "scale-down-recreated-test-test-1")) |
| 205 | assert.Check(t, strings.Contains(res.Stdout(), "scale-down-recreated-test-test-2")) |
| 206 | assert.Check(t, strings.Contains(res.Stdout(), "scale-down-recreated-test-test-3")) |
| 207 | assert.Check(t, strings.Contains(res.Stdout(), "scale-down-recreated-test-test-4")) |
| 208 | |
| 209 | t.Log("scale down removes obsolete replica #1 and #2") |
| 210 | c.NewDockerComposeCmd(t, "--project-directory", "fixtures/scale", "up", "-d", "--scale", "test=2") |
| 211 | |
| 212 | res = c.RunDockerComposeCmd(t, "ps", "--format", "{{.Name}}", "test") |
| 213 | res.Assert(t, icmd.Success) |
| 214 | assert.Check(t, strings.Contains(res.Stdout(), "scale-down-recreated-test-test-3")) |
| 215 | assert.Check(t, strings.Contains(res.Stdout(), "scale-down-recreated-test-test-4")) |
| 216 | } |
nothing calls this directly
no test coverage detected