Expect(modelErr.Type).To(Equal(models.Error_ResourceNotFound)) }) }) }) Describe("Cells", func() { const cell1 = "cell-id-1" const cell2 = "cell-id-2" Context("when there is a single cell", func() { var maintainers ifrit.Process BeforeEach(func() { Expect(serviceClient.Cells(logger)).To(HaveLen(0)) maintainers = ifrit.Invoke(grouper.NewParallel(os.Interrupt, grouper.Members{ {cell1, serviceClient.NewCellPresenceRunner(logger, newCellPresence(cell1), locket.RetryInterval, locket.LockTTL)}, {cell2, serviceClient.NewCellPresenceRunner(logger, newCellPresence(cell2), locket.RetryInterval, locket.LockTTL)}, })) }) AfterEach(func() { ginkgomon.Interrupt(maintainers) }) It("returns only one cell", func() { Eventually(func() (models.CellSet, error) { return serviceClient.Cells(logger) }).Should(HaveLen(2)) Expect(serviceClient.Cells(logger)).To(HaveKey(cell1)) Expect(serviceClient.Cells(logger)).To(HaveKey(cell2)) }) }) })
Expect(modelErr.Type).To(Equal(models.Error_ResourceNotFound)) }) }) }) Describe("Cells", func() { const cell1 = "cell-id-1" const cell2 = "cell-id-2" Context("when there is a single cell", func() { var maintainers ifrit.Process BeforeEach(func() { Expect(serviceClient.Cells(logger)).To(HaveLen(0)) maintainers = ifrit.Invoke(grouper.NewParallel(os.Interrupt, grouper.Members{ {cell1, serviceClient.NewCellPresenceRunner(logger, newCellPresence(cell1), locket.RetryInterval, locket.DefaultSessionTTL)}, {cell2, serviceClient.NewCellPresenceRunner(logger, newCellPresence(cell2), locket.RetryInterval, locket.DefaultSessionTTL)}, })) }) AfterEach(func() { ginkgomon.Interrupt(maintainers) }) It("returns only one cell", func() { Eventually(func() (models.CellSet, error) { return serviceClient.Cells(logger) }).Should(HaveLen(2)) Expect(serviceClient.Cells(logger)).To(HaveKey(cell1)) Expect(serviceClient.Cells(logger)).To(HaveKey(cell2)) }) }) })