         , (data, groups, out) ->
           out.send { x: data.x, y: data.y, z: data.z }
 
-        p.removeAllListeners()
         groups = []
         p.on 'begingroup', (grp) ->
           groups.push grp

            out.send res
          , delay

        out.once 'data', (data) ->
          chai.expect(data).to.be.an 'object'
          chai.expect(data.p1).to.equal 'req'

        p2.send 73
        p2.disconnect()

        chai.expect(c.inPorts.data1.getBuffer().length, 'data1 should have a packet').to.be.above 0
        chai.expect(c.inPorts.param2.getBuffer().length, 'param2 should have a packet').to.be.above 0

        c.shutdown (err) ->
          return done err if err
          for portName, port in c.inPorts.ports
            chai.expect(port.getBuffer()).to.eql []
            chai.expect(c.load).to.equal 0
          done()

      it 'should drop premature data if configured to do so', (done) ->
