deploy_test.go 738 B

123456789101112131415161718192021222324252627
  1. package stack
  2. import (
  3. "bytes"
  4. "testing"
  5. "github.com/docker/docker/cli/compose/convert"
  6. "github.com/docker/docker/cli/internal/test"
  7. "github.com/docker/docker/pkg/testutil/assert"
  8. "golang.org/x/net/context"
  9. )
  10. func TestPruneServices(t *testing.T) {
  11. ctx := context.Background()
  12. namespace := convert.NewNamespace("foo")
  13. services := map[string]struct{}{
  14. "new": {},
  15. "keep": {},
  16. }
  17. client := &fakeClient{services: []string{objectName("foo", "keep"), objectName("foo", "remove")}}
  18. dockerCli := test.NewFakeCli(client, &bytes.Buffer{})
  19. dockerCli.SetErr(&bytes.Buffer{})
  20. pruneServices(ctx, dockerCli, namespace, services)
  21. assert.DeepEqual(t, client.removedServices, buildObjectIDs([]string{objectName("foo", "remove")}))
  22. }