Exemplo n.º 1
0
			})

			JustBeforeEach(func() {
				parent := layercake.DockerImageID("70d8f0edf5c9008eb61c7c52c458e7e0a831649dbb238b93dde0854faae314a8")
				registerImageLayer(cake, &image.Image{
					ID:     parent.GraphID(),
					Parent: "",
				})

				id = layercake.ContainerID("abc")
				createContainerLayer(cake, id, parent, "")
			})

			AfterEach(func() {
				Expect(cake.Remove(id)).To(Succeed())
				Expect(driver.Cleanup()).To(Succeed())
				Expect(syscall.Unmount(root, 0)).To(Succeed())
				Expect(os.RemoveAll(backingStoreRoot)).To(Succeed())
			})

			It("should allow the user to write a file that does not exceed the quota", func() {
				path, err := cake.QuotaedPath(id, 10*1024*1024)
				Expect(err).NotTo(HaveOccurred())

				cmd := exec.Command("dd", "if=/dev/zero", fmt.Sprintf("of=%s", filepath.Join(path, "foo")), "bs=1M", "count=8")
				session, err := gexec.Start(cmd, GinkgoWriter, GinkgoWriter)
				Expect(err).To(Succeed())

				Eventually(session).Should(gexec.Exit(0))
			})