Unlike HTTP, WebSocket communication is duplex (both the client and the server can emit and listen to events) and persistent. This difference is reflected in how one would expect to mock a WebSocket communication.
I believe mocking WebSockets should be connection-based. This way each individual connected client is scoped to a particular interceptor handler.
interceptor.on('connection', (connection) => {