mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Add container name validation test
This commit is contained in:
parent
3ec39ad01a
commit
c06ab5f9c2
1 changed files with 48 additions and 0 deletions
|
@ -748,6 +748,54 @@ func TestRandomContainerName(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestContainerNameValidation(t *testing.T) {
|
||||
eng := NewTestEngine(t)
|
||||
runtime := mkRuntimeFromEngine(eng, t)
|
||||
defer nuke(runtime)
|
||||
|
||||
for _, test := range []struct {
|
||||
Name string
|
||||
Valid bool
|
||||
}{
|
||||
{"abc-123_AAA.1", true},
|
||||
{"\000asdf", false},
|
||||
} {
|
||||
config, _, _, err := docker.ParseRun([]string{unitTestImageID, "echo test"}, nil)
|
||||
if err != nil {
|
||||
if !test.Valid {
|
||||
continue
|
||||
}
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var shortID string
|
||||
job := eng.Job("create", test.Name)
|
||||
if err := job.ImportEnv(config); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
job.Stdout.AddString(&shortID)
|
||||
if err := job.Run(); err != nil {
|
||||
if !test.Valid {
|
||||
continue
|
||||
}
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
container := runtime.Get(shortID)
|
||||
|
||||
if container.Name != "/"+test.Name {
|
||||
t.Fatalf("Expect /%s got %s", test.Name, container.Name)
|
||||
}
|
||||
|
||||
if c := runtime.Get("/" + test.Name); c == nil {
|
||||
t.Fatalf("Couldn't retrieve test container as /%s", test.Name)
|
||||
} else if c.ID != container.ID {
|
||||
t.Fatalf("Container /%s has ID %s instead of %s", test.Name, c.ID, container.ID)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestLinkChildContainer(t *testing.T) {
|
||||
eng := NewTestEngine(t)
|
||||
runtime := mkRuntimeFromEngine(eng, t)
|
||||
|
|
Loading…
Reference in a new issue