123456789101112131415161718192021222324252627282930313233343536373839 |
- package container // import "github.com/docker/docker/integration/container"
- import (
- "context"
- "testing"
- "time"
- "github.com/docker/docker/integration/internal/container"
- "gotest.tools/assert"
- "gotest.tools/poll"
- )
- func TestStopContainerWithRestartPolicyAlways(t *testing.T) {
- defer setupTest(t)()
- client := testEnv.APIClient()
- ctx := context.Background()
- names := []string{"verifyRestart1-" + t.Name(), "verifyRestart2-" + t.Name()}
- for _, name := range names {
- container.Run(t, ctx, client,
- container.WithName(name),
- container.WithCmd("false"),
- container.WithRestartPolicy("always"),
- )
- }
- for _, name := range names {
- poll.WaitOn(t, container.IsInState(ctx, client, name, "running", "restarting"), poll.WithDelay(100*time.Millisecond))
- }
- for _, name := range names {
- err := client.ContainerStop(ctx, name, nil)
- assert.NilError(t, err)
- }
- for _, name := range names {
- poll.WaitOn(t, container.IsStopped(ctx, client, name), poll.WithDelay(100*time.Millisecond))
- }
- }
|