docker_cli_secret_inspect_test.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. // +build !windows
  2. package main
  3. import (
  4. "encoding/json"
  5. "github.com/docker/docker/api/types/swarm"
  6. "github.com/docker/docker/pkg/integration/checker"
  7. "github.com/go-check/check"
  8. )
  9. func (s *DockerSwarmSuite) TestSecretInspect(c *check.C) {
  10. d := s.AddDaemon(c, true, true)
  11. testName := "test_secret"
  12. id := d.createSecret(c, swarm.SecretSpec{
  13. swarm.Annotations{
  14. Name: testName,
  15. },
  16. []byte("TESTINGDATA"),
  17. })
  18. c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("secrets: %s", id))
  19. secret := d.getSecret(c, id)
  20. c.Assert(secret.Spec.Name, checker.Equals, testName)
  21. out, err := d.Cmd("secret", "inspect", testName)
  22. c.Assert(err, checker.IsNil, check.Commentf(out))
  23. var secrets []swarm.Secret
  24. c.Assert(json.Unmarshal([]byte(out), &secrets), checker.IsNil)
  25. c.Assert(secrets, checker.HasLen, 1)
  26. }
  27. func (s *DockerSwarmSuite) TestSecretInspectMultiple(c *check.C) {
  28. d := s.AddDaemon(c, true, true)
  29. testNames := []string{
  30. "test0",
  31. "test1",
  32. }
  33. for _, n := range testNames {
  34. id := d.createSecret(c, swarm.SecretSpec{
  35. swarm.Annotations{
  36. Name: n,
  37. },
  38. []byte("TESTINGDATA"),
  39. })
  40. c.Assert(id, checker.Not(checker.Equals), "", check.Commentf("secrets: %s", id))
  41. secret := d.getSecret(c, id)
  42. c.Assert(secret.Spec.Name, checker.Equals, n)
  43. }
  44. args := []string{
  45. "secret",
  46. "inspect",
  47. }
  48. args = append(args, testNames...)
  49. out, err := d.Cmd(args...)
  50. c.Assert(err, checker.IsNil, check.Commentf(out))
  51. var secrets []swarm.Secret
  52. c.Assert(json.Unmarshal([]byte(out), &secrets), checker.IsNil)
  53. c.Assert(secrets, checker.HasLen, 2)
  54. }