}) }) Context("when there is no room for the Task", func() { It("should error", func() { task := BuildTask("tg-test", "domain", linuxRootFSURL, 10000, 10) err := cell.ReserveTask(task) Expect(err).To(MatchError(rep.ErrorInsufficientResources)) }) }) }) Describe("Commit", func() { Context("with nothing to commit", func() { It("does nothing and returns empty", func() { failedWork := cell.Commit() Expect(failedWork).To(BeZero()) Expect(client.PerformCallCount()).To(Equal(0)) }) }) Context("with work to commit", func() { var lrp rep.LRP BeforeEach(func() { lrp = *BuildLRP("pg-new", "domain", 0, linuxRootFSURL, 20, 10) Expect(cell.ReserveLRP(&lrp)).To(Succeed()) }) It("asks the client to perform", func() { cell.Commit()