| package docker |
| |
| import ( |
| "github.com/dotcloud/docker" |
| "io/ioutil" |
| "os" |
| "path" |
| "testing" |
| ) |
| |
| func TestMount(t *testing.T) { |
| graph := tempGraph(t) |
| defer os.RemoveAll(graph.Root) |
| archive, err := fakeTar() |
| if err != nil { |
| t.Fatal(err) |
| } |
| image, err := graph.Create(archive, nil, "Testing", "", nil) |
| if err != nil { |
| t.Fatal(err) |
| } |
| tmp, err := ioutil.TempDir("", "docker-test-graph-mount-") |
| if err != nil { |
| t.Fatal(err) |
| } |
| defer os.RemoveAll(tmp) |
| rootfs := path.Join(tmp, "rootfs") |
| if err := os.MkdirAll(rootfs, 0700); err != nil { |
| t.Fatal(err) |
| } |
| rw := path.Join(tmp, "rw") |
| if err := os.MkdirAll(rw, 0700); err != nil { |
| t.Fatal(err) |
| } |
| if err := image.Mount(rootfs, rw); err != nil { |
| t.Fatal(err) |
| } |
| // FIXME: test for mount contents |
| defer func() { |
| if err := docker.Unmount(rootfs); err != nil { |
| t.Error(err) |
| } |
| }() |
| } |
| |
| //FIXME: duplicate |
| func tempGraph(t *testing.T) *docker.Graph { |
| tmp, err := ioutil.TempDir("", "docker-graph-") |
| if err != nil { |
| t.Fatal(err) |
| } |
| graph, err := docker.NewGraph(tmp) |
| if err != nil { |
| t.Fatal(err) |
| } |
| return graph |
| } |