docker_cli_info_test.go 900 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package main
  2. import (
  3. "os/exec"
  4. "strings"
  5. "github.com/docker/docker/utils"
  6. "github.com/go-check/check"
  7. )
  8. // ensure docker info succeeds
  9. func (s *DockerSuite) TestInfoEnsureSucceeds(c *check.C) {
  10. versionCmd := exec.Command(dockerBinary, "info")
  11. out, exitCode, err := runCommandWithOutput(versionCmd)
  12. if err != nil || exitCode != 0 {
  13. c.Fatalf("failed to execute docker info: %s, %v", out, err)
  14. }
  15. // always shown fields
  16. stringsToCheck := []string{
  17. "ID:",
  18. "Containers:",
  19. "Images:",
  20. "Execution Driver:",
  21. "Logging Driver:",
  22. "Operating System:",
  23. "CPUs:",
  24. "Total Memory:",
  25. "Kernel Version:",
  26. "Storage Driver:",
  27. }
  28. if utils.ExperimentalBuild() {
  29. stringsToCheck = append(stringsToCheck, "Experimental: true")
  30. }
  31. for _, linePrefix := range stringsToCheck {
  32. if !strings.Contains(out, linePrefix) {
  33. c.Errorf("couldn't find string %v in output", linePrefix)
  34. }
  35. }
  36. }