&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))
			})
		})
Beispiel #2
0
				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)