&repository_fetcher.Image{ImageID: "some-image-id", Volumes: []string{"/foo", "/bar"}}, rootfs_provider.Spec{ Namespaced: false, QuotaSize: 0, }, ) Expect(err).To(HaveOccurred()) }) }) }) Context("but creating the graph entry fails", func() { disaster := errors.New("oh no!") BeforeEach(func() { fakeCake.CreateReturns(disaster) }) It("returns the error", func() { _, _, err := provider.Create( lagertest.NewTestLogger("test"), "some-id", &repository_fetcher.Image{ImageID: "some-image-id"}, rootfs_provider.Spec{ Namespaced: false, QuotaSize: 0, }, ) Expect(err).To(Equal(disaster)) }) })
return "", nil } cake.IsLeafReturns(true, nil) }) AfterEach(func() { Expect(os.RemoveAll(parentDir)).To(Succeed()) Expect(os.RemoveAll(namespacedChildDir)).To(Succeed()) Expect(os.RemoveAll(otherNamespacedChildDir)).To(Succeed()) }) Context("when the image ID is not namespaced", func() { It("should delegate to the cake", func() { cake.CreateReturns(testError) Expect(aufsCake.Create(childID, parentID, "potato")).To(Equal(testError)) Expect(cake.CreateCallCount()).To(Equal(1)) cid, iid, containerID := cake.CreateArgsForCall(0) Expect(cid).To(Equal(childID)) Expect(iid).To(Equal(parentID)) Expect(containerID).To(Equal("potato")) }) }) Context("when the image ID is namespaced", func() { It("should delegate to the cake but with an empty parent", func() { cake.CreateReturns(testError) Expect(aufsCake.Create(namespacedChildID, parentID, "")).To(Equal(testError)) Expect(cake.CreateCallCount()).To(Equal(1)) cid, iid, _ := cake.CreateArgsForCall(0)