newLease, leased, err := pipelineDB.LeaseResourceChecking("some-resource", 1*time.Second, false) Expect(err).NotTo(HaveOccurred()) Expect(leased).To(BeTrue()) newLease.Break() }) }) }) }) Describe("taking out a lease on build scheduling", func() { var buildID int BeforeEach(func() { build, err := sqlDB.CreateOneOffBuild() Expect(err).NotTo(HaveOccurred()) buildID = build.ID }) Context("when something has been scheduling it recently", func() { It("does not get the lease", func() { lease, leased, err := sqlDB.LeaseBuildScheduling(buildID, 1*time.Second) Expect(err).NotTo(HaveOccurred()) Expect(leased).To(BeTrue()) lease.Break() _, leased, err = sqlDB.LeaseBuildScheduling(buildID, 1*time.Second) Expect(err).NotTo(HaveOccurred())