}) }) }) Describe("RecentLogs", func() { var ( appGuid = "appGuid" authToken = "authToken" receivedLogMessages []*events.LogMessage recentError error ) perform := func() { close(messagesToSend) connection = noaa.NewConsumer(trafficControllerUrl, nil, nil) receivedLogMessages, recentError = connection.RecentLogs(appGuid, authToken) } Context("when the connection cannot be established", func() { It("invalid urls return error", func() { trafficControllerUrl = "invalid-url" perform() Expect(recentError).ToNot(BeNil()) }) }) Context("when the connection can be established", func() { BeforeEach(func() { testServer = httptest.NewServer(handlers.NewHttpHandler(messagesToSend, loggertesthelper.Logger())) trafficControllerUrl = "ws://" + testServer.Listener.Addr().String()
var err error Eventually(errorChan).Should(Receive(&err)) Expect(err).To(HaveOccurred()) Expect(err.Error()).To(ContainSubstring(http.StatusText(http.StatusBadRequest))) }) }) Describe("RecentLogs", func() { var httpTestServer *httptest.Server var incomingMessages []*events.LogMessage perform := func() { close(messagesToSend) connection = noaa.NewConsumer(endpoint, tlsSettings, consumerProxyFunc) incomingMessages, err = connection.RecentLogs(appGuid, authToken) } BeforeEach(func() { httpTestServer = httptest.NewServer(handlers.NewHttpHandler(messagesToSend, loggertesthelper.Logger())) endpoint = "ws://" + httpTestServer.Listener.Addr().String() }) AfterEach(func() { httpTestServer.Close() }) It("returns messages from the server", func() { messagesToSend <- marshalMessage(createMessage("test-message-0", 0)) messagesToSend <- marshalMessage(createMessage("test-message-1", 0))
}) }) }) Describe("RecentLogs", func() { var ( appGuid = "appGuid" authToken = "authToken" receivedLogMessages []*events.LogMessage recentError error ) perform := func() { close(messagesToSend) cnsmr = noaa.NewConsumer(trafficControllerUrl, nil, nil) receivedLogMessages, recentError = cnsmr.RecentLogs(appGuid, authToken) } Context("when the connection cannot be established", func() { It("invalid urls return error", func() { trafficControllerUrl = "invalid-url" perform() Expect(recentError).ToNot(BeNil()) }) }) Context("when the connection can be established", func() { BeforeEach(func() { testServer = httptest.NewServer(handlers.NewHttpHandler(messagesToSend, loggertesthelper.Logger())) trafficControllerUrl = "ws://" + testServer.Listener.Addr().String()