"github.com/cloudfoundry/dropsonde/factories"
	"github.com/cloudfoundry/loggregatorlib/loggertesthelper"
	"github.com/gogo/protobuf/proto"
	"github.com/nu7hatch/gouuid"
)

var _ = Describe("Tcplistener", func() {
	var envelopeChan chan *events.Envelope
	var tlsListener listeners.Listener

	BeforeEach(func() {
		envelopeChan = make(chan *events.Envelope)
		var err error
		tlsListener, err = listeners.NewTLSListener("aname", "127.0.0.1:0", tlsconfig, envelopeChan, loggertesthelper.Logger())
		Expect(err).NotTo(HaveOccurred())
		go tlsListener.Start()
	})

	AfterEach(func() {
		tlsListener.Stop()
	})

	Context("dropsonde metric emission", func() {
		BeforeEach(func() {
			fakeEventEmitter.Reset()
			metricBatcher.Reset()
		})

		It("sends all types of messages as a protobuf", func() {
			for name, eventType := range events.Envelope_EventType_value {
				envelope := createEnvelope(events.Envelope_EventType(eventType))
Пример #2
0
	var (
		listener        listeners.Listener
		dataChannel     <-chan []byte
		listenerStopped chan struct{}
		address         string
	)

	BeforeEach(func() {
		listenerStopped = make(chan struct{})
		loggertesthelper.TestLoggerSink.Clear()

		port := 3456 + config.GinkgoConfig.ParallelNode
		address = net.JoinHostPort("127.0.0.1", strconv.Itoa(port))
		listener, dataChannel = listeners.NewUDPListener(address, loggertesthelper.Logger(), "udpListener")
		go func() {
			listener.Start()
			close(listenerStopped)
		}()

		Eventually(loggertesthelper.TestLoggerSink.LogContents).Should(ContainSubstring("Listening on port " + address))
	})

	AfterEach(func() {
		listener.Stop()
		Eventually(listenerStopped).Should(BeClosed())
	})

	Context("with a listner running", func() {
		It("listens to the socket and forwards log lines", func() {
			expectedData := "Some Data"
			otherData := "More stuff"
Пример #3
0
		tlsClientConfig.ServerName = "doppler"

		envelopeChan = make(chan *events.Envelope)
	})

	JustBeforeEach(func() {
		var err error
		listener, err = listeners.NewTCPListener(
			"aname",
			"127.0.0.1:1234",
			tlsListenerConfig,
			envelopeChan,
			loggertesthelper.Logger(),
		)
		Expect(err).NotTo(HaveOccurred())
		go listener.Start()

		// wait for the listener to start up
		openTCPConnection("127.0.0.1:1234", tlsClientConfig).Close()
	})

	AfterEach(func() {
		listener.Stop()
	})

	Context("with TLS disabled", func() {
		BeforeEach(func() {
			tlsListenerConfig = nil
			tlsClientConfig = nil
			fakeEventEmitter.Reset()
			metricBatcher.Reset()