default: } } bufferSize = 100 }) JustBeforeEach(func() { syslogSink = syslog.NewSyslogSink("appId", "syslog://using-fake", loggertesthelper.Logger(), bufferSize, sysLogger, errorHandler, "dropsonde-origin") }) Context("when remote syslog server is down", func() { JustBeforeEach(func() { sysLogger.SetDown(true) go func() { syslogSink.Run(inputChan) close(syslogSinkRunFinished) }() }) AfterEach(func() { syslogSink.Disconnect() Eventually(syslogSinkRunFinished).Should(BeClosed()) }) It("still accepts messages without blocking", func() { logMessage, _ := emitter.Wrap(factories.NewLogMessage(events.LogMessage_OUT, "test message", "appId", "App"), "origin") for i := 0; i < int(bufferSize); i++ { Eventually(inputChan).Should(BeSent(logMessage)) }