func initializeLockMaintainer(logger lager.Logger, serviceClient bbs.ServiceClient) ifrit.Runner { uuid, err := uuid.NewV4() if err != nil { logger.Fatal("Couldn't generate uuid", err) } if *advertiseURL == "" { logger.Fatal("Advertise URL must be specified", nil) } bbsPresence := models.NewBBSPresence(uuid.String(), *advertiseURL) lockMaintainer, err := serviceClient.NewBBSLockRunner(logger, &bbsPresence, *lockRetryInterval, *lockTTL) if err != nil { logger.Fatal("Couldn't create lock maintainer", err) } return lockMaintainer }
"os" "code.cloudfoundry.org/bbs" "code.cloudfoundry.org/bbs/models" "code.cloudfoundry.org/clock" "code.cloudfoundry.org/locket" "github.com/tedsuo/ifrit" "github.com/tedsuo/ifrit/ginkgomon" "github.com/tedsuo/ifrit/grouper" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("ServiceClient", func() { var serviceClient bbs.ServiceClient BeforeEach(func() { serviceClient = bbs.NewServiceClient(consulClient, clock.NewClock()) }) Describe("CellById", func() { const cellID = "cell-id" Context("when the cell exists", func() { It("returns the correct CellPresence", func() { cellPresence := newCellPresence(cellID) consulHelper.RegisterCell(cellPresence) presence, err := serviceClient.CellById(logger, cellID) Expect(err).NotTo(HaveOccurred()) Expect(presence).To(BeEquivalentTo(cellPresence))