コード例 #1
0
		})

		It("aborts and returns a wrapped error", func() {
			err := controller.Del(payload)

			Expect(err).To(MatchError("deletor: some-deletor-error"))
			Expect(datastore.DeleteCallCount()).To(Equal(0))
		})
	})

	It("deletes the container from the datastore", func() {
		err := controller.Del(payload)
		Expect(err).NotTo(HaveOccurred())

		Expect(datastore.DeleteCallCount()).To(Equal(1))
		containerID := datastore.DeleteArgsForCall(0)
		Expect(containerID).To(Equal("some-container-id"))
	})

	Context("when deleting from the datastore fails", func() {
		BeforeEach(func() {
			datastore.DeleteReturns(errors.New("some-datastore-error"))
		})

		It("returns a wrapped error", func() {
			err := controller.Del(payload)
			Expect(err).To(MatchError("datastore delete: some-datastore-error"))
		})
	})

	It("releases the IP allocation", func() {