ID: id.GraphID(), Parent: parent.GraphID(), Size: size[id], }, nil } return &image.Image{ Size: size[id], }, nil } fakeCake.IsLeafStub = func(id layercake.ID) (bool, error) { for _, p := range child2parent { if p == id { return false, nil } } return true, nil } fakeCake.RemoveStub = func(id layercake.ID) error { delete(child2parent, id) return nil } child2parent = make(map[layercake.ID]layercake.ID) size = make(map[layercake.ID]int64) }) JustBeforeEach(func() {
}) AfterEach(func() { Expect(os.RemoveAll(parentDir)).To(Succeed()) Expect(os.RemoveAll(namespacedChildDir)).To(Succeed()) }) JustBeforeEach(func() { cake.IsLeafStub = func(id layercake.ID) (bool, error) { if id == parentID { // as far as docker is concerned, this is a leaf, since docker // knows nothing about the namespaced child. return true, nil } if id == namespacedChildID { // as far as docker knows, the namespaced child has no relatives of // any kind return true, nil } // docker knows nothing about any other layers return false, testError } Expect(aufsCake.Create(namespacedChildID, parentID, "")).To(Succeed()) }) It("should be a leaf", func() { isLeaf, err := aufsCake.IsLeaf(namespacedChildID) Expect(err).NotTo(HaveOccurred()) Expect(isLeaf).To(BeTrue())