I spent a bunch of time researching that yesterday, and as far as I can tell, the combination of ExpressJS/Node/Mocha effectively mean "that's not possible".  My current instinct is that we should pivot quickly to a solution with spies/stubs (eg Sinon), and make this into a true unit test.  IE test start() only for the functionality it implements; and expose setupWebSocketServer, and unit test that with spies for what we can actually unit test.  And leave the functional testing for another day.