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  }