getMockBuilder(Config::class)->getMock(); /** @var Request|MockObject $request */ $request = $this->getMockBuilder(Request::class)->getMock(); $app = $this->getApp(['call', 'get', 'instance']); $this->setExpects($app, 'call', [[Request::class, 'createFromGlobals']], $request); $this->setExpects($app, 'get', ['config'], $config); $this->setExpects($app, 'instance', ['request', $request]); $this->setExpects($config, 'get', ['trusted_proxies'], $configuredProxies); /** @var ServiceProvider|MockObject $serviceProvider */ $serviceProvider = $this->getMockBuilder(RequestServiceProvider::class) ->setConstructorArgs([$app]) ->setMethods(['setTrustedProxies']) ->getMock(); $serviceProvider->expects($this->once()) ->method('setTrustedProxies') ->with($request, $trustedProxies); $serviceProvider->register(); } }