Signed-off-by: Daniel Nephin <dnephin@docker.com>
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,18 +0,0 @@ |
| 1 |
-package main |
|
| 2 |
- |
|
| 3 |
-import ( |
|
| 4 |
- "github.com/docker/docker/client" |
|
| 5 |
- "github.com/docker/docker/dockerversion" |
|
| 6 |
- "github.com/docker/docker/integration-cli/checker" |
|
| 7 |
- "github.com/go-check/check" |
|
| 8 |
- "golang.org/x/net/context" |
|
| 9 |
-) |
|
| 10 |
- |
|
| 11 |
-func (s *DockerSuite) TestGetVersion(c *check.C) {
|
|
| 12 |
- cli, err := client.NewEnvClient() |
|
| 13 |
- c.Assert(err, checker.IsNil) |
|
| 14 |
- defer cli.Close() |
|
| 15 |
- |
|
| 16 |
- v, err := cli.ServerVersion(context.Background()) |
|
| 17 |
- c.Assert(v.Version, checker.Equals, dockerversion.Version, check.Commentf("Version mismatch"))
|
|
| 18 |
-} |
| 19 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,29 +0,0 @@ |
| 1 |
-package main |
|
| 2 |
- |
|
| 3 |
-import ( |
|
| 4 |
- "strings" |
|
| 5 |
- |
|
| 6 |
- "github.com/docker/docker/integration-cli/checker" |
|
| 7 |
- "github.com/go-check/check" |
|
| 8 |
-) |
|
| 9 |
- |
|
| 10 |
-func (s *DockerSuite) TestExperimentalVersionTrue(c *check.C) {
|
|
| 11 |
- testExperimentalInVersion(c, ExperimentalDaemon, "*true") |
|
| 12 |
-} |
|
| 13 |
- |
|
| 14 |
-func (s *DockerSuite) TestExperimentalVersionFalse(c *check.C) {
|
|
| 15 |
- testExperimentalInVersion(c, NotExperimentalDaemon, "*false") |
|
| 16 |
-} |
|
| 17 |
- |
|
| 18 |
-func testExperimentalInVersion(c *check.C, requirement func() bool, expectedValue string) {
|
|
| 19 |
- testRequires(c, requirement) |
|
| 20 |
- out, _ := dockerCmd(c, "version") |
|
| 21 |
- for _, line := range strings.Split(out, "\n") {
|
|
| 22 |
- if strings.HasPrefix(strings.TrimSpace(line), "Experimental:") {
|
|
| 23 |
- c.Assert(line, checker.Matches, expectedValue) |
|
| 24 |
- return |
|
| 25 |
- } |
|
| 26 |
- } |
|
| 27 |
- |
|
| 28 |
- c.Fatal(`"Experimental" not found in version output`) |
|
| 29 |
-} |
| 30 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,58 +0,0 @@ |
| 1 |
-package main |
|
| 2 |
- |
|
| 3 |
-import ( |
|
| 4 |
- "strings" |
|
| 5 |
- |
|
| 6 |
- "github.com/docker/docker/integration-cli/checker" |
|
| 7 |
- "github.com/go-check/check" |
|
| 8 |
-) |
|
| 9 |
- |
|
| 10 |
-// ensure docker version works |
|
| 11 |
-func (s *DockerSuite) TestVersionEnsureSucceeds(c *check.C) {
|
|
| 12 |
- out, _ := dockerCmd(c, "version") |
|
| 13 |
- stringsToCheck := map[string]int{
|
|
| 14 |
- "Client:": 1, |
|
| 15 |
- "Server:": 1, |
|
| 16 |
- " Version:": 2, |
|
| 17 |
- " API version:": 2, |
|
| 18 |
- " Go version:": 2, |
|
| 19 |
- " Git commit:": 2, |
|
| 20 |
- " OS/Arch:": 2, |
|
| 21 |
- " Built:": 2, |
|
| 22 |
- } |
|
| 23 |
- |
|
| 24 |
- for k, v := range stringsToCheck {
|
|
| 25 |
- c.Assert(strings.Count(out, k), checker.Equals, v, check.Commentf("The count of %v in %s does not match excepted", k, out))
|
|
| 26 |
- } |
|
| 27 |
-} |
|
| 28 |
- |
|
| 29 |
-// ensure the Windows daemon return the correct platform string |
|
| 30 |
-func (s *DockerSuite) TestVersionPlatform_w(c *check.C) {
|
|
| 31 |
- testRequires(c, DaemonIsWindows) |
|
| 32 |
- testVersionPlatform(c, "windows/amd64") |
|
| 33 |
-} |
|
| 34 |
- |
|
| 35 |
-// ensure the Linux daemon return the correct platform string |
|
| 36 |
-func (s *DockerSuite) TestVersionPlatform_l(c *check.C) {
|
|
| 37 |
- testRequires(c, DaemonIsLinux) |
|
| 38 |
- testVersionPlatform(c, "linux") |
|
| 39 |
-} |
|
| 40 |
- |
|
| 41 |
-func testVersionPlatform(c *check.C, platform string) {
|
|
| 42 |
- out, _ := dockerCmd(c, "version") |
|
| 43 |
- expected := "OS/Arch: " + platform |
|
| 44 |
- |
|
| 45 |
- split := strings.Split(out, "\n") |
|
| 46 |
- c.Assert(len(split) >= 14, checker.Equals, true, check.Commentf("got %d lines from version", len(split)))
|
|
| 47 |
- |
|
| 48 |
- // Verify the second 'OS/Arch' matches the platform. Experimental has |
|
| 49 |
- // more lines of output than 'regular' |
|
| 50 |
- bFound := false |
|
| 51 |
- for i := 14; i < len(split); i++ {
|
|
| 52 |
- if strings.Contains(split[i], expected) {
|
|
| 53 |
- bFound = true |
|
| 54 |
- break |
|
| 55 |
- } |
|
| 56 |
- } |
|
| 57 |
- c.Assert(bFound, checker.Equals, true, check.Commentf("Could not find server '%s' in '%s'", expected, out))
|
|
| 58 |
-} |
| 59 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,28 @@ |
| 0 |
+package system |
|
| 1 |
+ |
|
| 2 |
+import ( |
|
| 3 |
+ "fmt" |
|
| 4 |
+ "os" |
|
| 5 |
+ "testing" |
|
| 6 |
+ |
|
| 7 |
+ "github.com/docker/docker/internal/test/environment" |
|
| 8 |
+) |
|
| 9 |
+ |
|
| 10 |
+var testEnv *environment.Execution |
|
| 11 |
+ |
|
| 12 |
+func TestMain(m *testing.M) {
|
|
| 13 |
+ var err error |
|
| 14 |
+ testEnv, err = environment.New() |
|
| 15 |
+ if err != nil {
|
|
| 16 |
+ fmt.Println(err) |
|
| 17 |
+ os.Exit(1) |
|
| 18 |
+ } |
|
| 19 |
+ |
|
| 20 |
+ testEnv.Print() |
|
| 21 |
+ os.Exit(m.Run()) |
|
| 22 |
+} |
|
| 23 |
+ |
|
| 24 |
+func setupTest(t *testing.T) func() {
|
|
| 25 |
+ environment.ProtectImages(t, testEnv) |
|
| 26 |
+ return func() { testEnv.Clean(t) }
|
|
| 27 |
+} |
| 0 | 28 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,24 @@ |
| 0 |
+package system |
|
| 1 |
+ |
|
| 2 |
+import ( |
|
| 3 |
+ "testing" |
|
| 4 |
+ |
|
| 5 |
+ "github.com/docker/docker/integration-cli/request" |
|
| 6 |
+ "github.com/stretchr/testify/assert" |
|
| 7 |
+ "github.com/stretchr/testify/require" |
|
| 8 |
+ "golang.org/x/net/context" |
|
| 9 |
+) |
|
| 10 |
+ |
|
| 11 |
+func TestVersion(t *testing.T) {
|
|
| 12 |
+ client, err := request.NewClient() |
|
| 13 |
+ require.NoError(t, err) |
|
| 14 |
+ |
|
| 15 |
+ version, err := client.ServerVersion(context.Background()) |
|
| 16 |
+ require.NoError(t, err) |
|
| 17 |
+ |
|
| 18 |
+ assert.NotNil(t, version.APIVersion) |
|
| 19 |
+ assert.NotNil(t, version.Version) |
|
| 20 |
+ assert.NotNil(t, version.MinAPIVersion) |
|
| 21 |
+ assert.Equal(t, testEnv.DaemonInfo.ExperimentalBuild, version.Experimental) |
|
| 22 |
+ assert.Equal(t, testEnv.DaemonInfo.OSType, version.Os) |
|
| 23 |
+} |