Esempio n. 1
0
					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() {
Esempio n. 2
0
			})

			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())