delegator = new TaskRunnerDelegator(); } /** @test */ public function serverIsFetchedFromCallbackAndDecorated(): void { $server = $this->createMock(HttpServer::class); $server ->expects($this->exactly(2)) ->method('on'); $callback = function () use ($server) { return $server; }; $container = $this->prophesize(ContainerInterface::class); $getTaskRunner = $container->get(TaskRunner::class)->willReturn($this->prophesize(TaskRunner::class)->reveal()); $getLogger = $container->get(LoggerInterface::class)->willReturn( $this->prophesize(LoggerInterface::class)->reveal() ); $result = ($this->delegator)($container->reveal(), '', $callback); $this->assertSame($server, $result); $getTaskRunner->shouldHaveBeenCalledOnce(); $getLogger->shouldHaveBeenCalledOnce(); } }