getMockBuilder(InvokableDummy::class)->getMock(); $mock->expects($this->never()) ->method('test'); $next = $this->getMockBuilder(InvokableDummy::class)->getMock(); $next->expects($this->once()) ->method('test'); $request = new ServerRequest("GET", "/", [], ""); $middleware = new WebSocketMiddleware(); $middleware->on('connection', [$mock,"test"]); $middleware->__invoke($request, [$next,"test"]); } public function testThatWebSocketRequestsAreHandled() { $mock = $this->getMockBuilder(InvokableDummy::class)->getMock(); $mock->expects($this->once()) ->method('test'); $next = $this->getMockBuilder(InvokableDummy::class)->getMock(); $next->expects($this->never()) ->method('test'); $request = new ServerRequest("GET", "/", [ 'upgrade' => [ 'websocket' ] ]); $middleware = new WebSocketMiddleware(); $middleware->on('connection', [$mock,"test"]); $middleware->__invoke($request, [$next,"test"]); } } class InvokableDummy { public function test() { } }