integration-cli/docker_cli_create_unix_test.go
4a8799dc
 // +build !windows
 
 package main
 
 import (
 	"strings"
 
 	"github.com/go-check/check"
 )
 
 // Test case for #30166 (target was not validated)
 func (s *DockerSuite) TestCreateTmpfsMountsTarget(c *check.C) {
 	testRequires(c, DaemonIsLinux)
 	type testCase struct {
 		target        string
 		expectedError string
 	}
 	cases := []testCase{
 		{
 			target:        ".",
 			expectedError: "mount path must be absolute",
 		},
 		{
 			target:        "foo",
 			expectedError: "mount path must be absolute",
 		},
 		{
 			target:        "/",
 			expectedError: "destination can't be '/'",
 		},
 		{
 			target:        "//",
 			expectedError: "destination can't be '/'",
 		},
 	}
 	for _, x := range cases {
 		out, _, _ := dockerCmdWithError("create", "--tmpfs", x.target, "busybox", "sh")
 		if x.expectedError != "" && !strings.Contains(out, x.expectedError) {
 			c.Fatalf("mounting tmpfs over %q should fail with %q, but got %q",
 				x.target, x.expectedError, out)
 		}
 	}
 }