The method used to set the header won't work for mocked requests:
var setHeader = res.set ? http.OutgoingMessage.prototype.setHeader : res.setHeader
Should probably be something along the lines of:
var setHeader = res.setHeader ? res.setHeader : http.OutgoingMessage.prototype.setHeader