package docker import ( "github.com/dotcloud/docker" "github.com/dotcloud/docker/utils" "io/ioutil" "testing" "time" ) func TestServerListOrderedImagesByCreationDate(t *testing.T) { eng := NewTestEngine(t) defer mkRuntimeFromEngine(eng, t).Nuke() srv := mkServerFromEngine(eng, t) if err := generateImage("", srv); err != nil { t.Fatal(err) } 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) { eng := NewTestEngine(t) defer mkRuntimeFromEngine(eng, t).Nuke() srv := mkServerFromEngine(eng, t) err := generateImage("bar", srv) if err != nil { t.Fatal(err) } time.Sleep(time.Second) err = generateImage("zed", srv) if err != nil { t.Fatal(err) } images, err := srv.Images(true, "") if err != nil { t.Fatal(err) } if images[0].RepoTags[0] != "repo:zed" && images[0].RepoTags[0] != "repo:bar" { t.Errorf("Expected []APIImges to be ordered by most recent creation date. %s", images) } } func generateImage(name string, srv *docker.Server) error { archive, err := fakeTar() if err != nil { return err } return srv.ImageImport("-", "repo", name, archive, ioutil.Discard, utils.NewStreamFormatter(true)) }