github.com/mheon/docker@v0.11.2-0.20150922122814-44f47903a831/daemon/container_unit_test.go (about) 1 package daemon 2 3 import ( 4 "testing" 5 6 "github.com/docker/docker/pkg/signal" 7 "github.com/docker/docker/runconfig" 8 ) 9 10 func TestGetFullName(t *testing.T) { 11 name, err := GetFullContainerName("testing") 12 if err != nil { 13 t.Fatal(err) 14 } 15 if name != "/testing" { 16 t.Fatalf("Expected /testing got %s", name) 17 } 18 if _, err := GetFullContainerName(""); err == nil { 19 t.Fatal("Error should not be nil") 20 } 21 } 22 23 func TestValidContainerNames(t *testing.T) { 24 invalidNames := []string{"-rm", "&sdfsfd", "safd%sd"} 25 validNames := []string{"word-word", "word_word", "1weoid"} 26 27 for _, name := range invalidNames { 28 if validContainerNamePattern.MatchString(name) { 29 t.Fatalf("%q is not a valid container name and was returned as valid.", name) 30 } 31 } 32 33 for _, name := range validNames { 34 if !validContainerNamePattern.MatchString(name) { 35 t.Fatalf("%q is a valid container name and was returned as invalid.", name) 36 } 37 } 38 } 39 40 func TestContainerStopSignal(t *testing.T) { 41 c := &Container{ 42 CommonContainer: CommonContainer{ 43 Config: &runconfig.Config{}, 44 }, 45 } 46 47 def, err := signal.ParseSignal(signal.DefaultStopSignal) 48 if err != nil { 49 t.Fatal(err) 50 } 51 52 s := c.stopSignal() 53 if s != int(def) { 54 t.Fatalf("Expected %v, got %v", def, s) 55 } 56 57 c = &Container{ 58 CommonContainer: CommonContainer{ 59 Config: &runconfig.Config{StopSignal: "SIGKILL"}, 60 }, 61 } 62 s = c.stopSignal() 63 if s != 9 { 64 t.Fatalf("Expected 9, got %v", s) 65 } 66 }