var _ = Describe("DropsondeMarshaller", func() { var ( inputChan chan *events.Envelope outputChan chan []byte runComplete chan struct{} marshaller dropsonde_marshaller.DropsondeMarshaller ) BeforeEach(func() { inputChan = make(chan *events.Envelope, 10) outputChan = make(chan []byte, 10) runComplete = make(chan struct{}) marshaller = dropsonde_marshaller.NewDropsondeMarshaller(loggertesthelper.Logger()) go func() { marshaller.Run(inputChan, outputChan) close(runComplete) }() }) AfterEach(func() { close(inputChan) Eventually(runComplete).Should(BeClosed()) }) It("marshals envelopes into bytes", func() { envelope := &events.Envelope{ Origin: proto.String("fake-origin-3"), EventType: events.Envelope_Heartbeat.Enum(), Heartbeat: factories.NewHeartbeat(1, 2, 3), }