dbConn = db.Wrap(postgresRunner.Open()) listener = pq.NewListener(postgresRunner.DataSourceName(), time.Second, time.Minute, nil) Eventually(listener.Ping, 5*time.Second).ShouldNot(HaveOccurred()) bus := db.NewNotificationsBus(listener, dbConn) pipelinesDB = new(fakes.FakePipelinesDB) pipelineDBFactory = db.NewPipelineDBFactory(lagertest.NewTestLogger("test"), dbConn, bus, pipelinesDB) }) AfterEach(func() { err := dbConn.Close() Expect(err).NotTo(HaveOccurred()) err = listener.Close() Expect(err).NotTo(HaveOccurred()) }) Describe("default pipeline", func() { It("is the first one returned from the DB", func() { savedPipelineOne := db.SavedPipeline{ ID: 1, Pipeline: db.Pipeline{ Name: "a-pipeline", }, } savedPipelineTwo := db.SavedPipeline{ ID: 2, Pipeline: db.Pipeline{
dbLogger := lagertest.NewTestLogger("test") postgresRunner.Truncate() dbConn = postgresRunner.Open() dbListener = pq.NewListener(postgresRunner.DataSourceName(), time.Second, time.Minute, nil) bus := db.NewNotificationsBus(dbListener, dbConn) sqlDB = db.NewSQL(dbLogger, dbConn, bus) pipelineDBFactory = db.NewPipelineDBFactory(dbLogger, dbConn, bus, sqlDB) atcProcess, atcPort = startATC(atcBin, 1) }) AfterEach(func() { ginkgomon.Interrupt(atcProcess) Expect(dbConn.Close()).To(Succeed()) Expect(dbListener.Close()).To(Succeed()) }) Describe("viewing a list of builds", func() { var page *agouti.Page var pipelineDB db.PipelineDB BeforeEach(func() { var err error page, err = agoutiDriver.NewPage() Expect(err).NotTo(HaveOccurred()) }) AfterEach(func() { Expect(page.Destroy()).To(Succeed()) })
"-sqlDataSource", postgresRunner.DataSourceName(), ) atcRunner := ginkgomon.New(ginkgomon.Config{ Command: atcCommand, Name: "atc", StartCheck: "atc.listening", AnsiColorCode: "32m", }) atcProcess = ginkgomon.Invoke(atcRunner) }) AfterEach(func() { ginkgomon.Interrupt(atcProcess) Ω(dbConn.Close()).Should(Succeed()) Ω(dbListener.Close()).Should(Succeed()) postgresRunner.DropTestDB() }) It("can reach the page", func() { request, err := http.NewRequest("GET", fmt.Sprintf("http://127.0.0.1:%d", atcPort), nil) resp, err := http.DefaultClient.Do(request) Ω(err).ShouldNot(HaveOccurred()) Ω(resp.StatusCode).Should(Equal(http.StatusUnauthorized)) request.SetBasicAuth("admin", "password") resp, err = http.DefaultClient.Do(request) Ω(err).ShouldNot(HaveOccurred()) Ω(resp.StatusCode).Should(Equal(http.StatusOK))