| package docker |
| |
| import ( |
| "fmt" |
| "testing" |
| ) |
| |
| func TestServerListOrderedImagesByCreationDate(t *testing.T) { |
| runtime := mkRuntime(t) |
| defer nuke(runtime) |
| |
| archive, err := fakeTar() |
| if err != nil { |
| t.Fatal(err) |
| } |
| _, err = runtime.graph.Create(archive, nil, "Testing", "", nil) |
| if err != nil { |
| t.Fatal(err) |
| } |
| |
| srv := &Server{runtime: runtime} |
| |
| images, err := srv.Images(true, "") |
| if err != nil { |
| t.Fatal(err) |
| } |
| |
| if images[0].Created < images[1].Created { |
| t.Error("Expected []APIImges to be ordered by most recent creation date.") |
| } |
| } |
| |
| func TestServerListOrderedImagesByCreationDateAndTag(t *testing.T) { |
| runtime := mkRuntime(t) |
| defer nuke(runtime) |
| |
| archive, err := fakeTar() |
| if err != nil { |
| t.Fatal(err) |
| } |
| image, err := runtime.graph.Create(archive, nil, "Testing", "", nil) |
| if err != nil { |
| t.Fatal(err) |
| } |
| |
| srv := &Server{runtime: runtime} |
| srv.ContainerTag(image.ID, "repo", "foo", false) |
| srv.ContainerTag(image.ID, "repo", "bar", false) |
| |
| images, err := srv.Images(true, "") |
| if err != nil { |
| t.Fatal(err) |
| } |
| |
| if images[0].Created != images[1].Created || images[0].Tag >= images[1].Tag { |
| t.Error("Expected []APIImges to be ordered by most recent creation date and tag name.") |
| } |
| } |
| |
| func TestSortUniquePorts(t *testing.T) { |
| ports := []Port{ |
| Port("6379/tcp"), |
| Port("22/tcp"), |
| } |
| |
| sortPorts(ports, func(ip, jp Port) bool { |
| return ip.Int() < jp.Int() || (ip.Int() == jp.Int() && ip.Proto() == "tcp") |
| }) |
| |
| first := ports[0] |
| if fmt.Sprint(first) != "22/tcp" { |
| t.Log(fmt.Sprint(first)) |
| t.Fail() |
| } |
| } |
| |
| func TestSortSamePortWithDifferentProto(t *testing.T) { |
| ports := []Port{ |
| Port("8888/tcp"), |
| Port("8888/udp"), |
| Port("6379/tcp"), |
| Port("6379/udp"), |
| } |
| |
| sortPorts(ports, func(ip, jp Port) bool { |
| return ip.Int() < jp.Int() || (ip.Int() == jp.Int() && ip.Proto() == "tcp") |
| }) |
| |
| first := ports[0] |
| if fmt.Sprint(first) != "6379/tcp" { |
| t.Fail() |
| } |
| } |