settings['ShowPhpInfo'] = true; $request = ServerRequestFactory::create()->createServerRequest('GET', 'http://example.com/'); $controller = new PhpInfoController(new ResponseRenderer(), ResponseFactory::create(), $config); $response = $controller($request); ob_start(); phpinfo(INFO_GENERAL | INFO_CONFIGURATION | INFO_MODULES); $expected = (string) ob_get_clean(); self::assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); self::assertSame(['text/html; charset=utf-8'], $response->getHeader('Content-Type')); self::assertSame($expected, (string) $response->getBody()); } public function testWithShowPhpInfoEqualsFalse(): void { $config = Config::getInstance(); $config->settings['ShowPhpInfo'] = false; $config->set('PmaAbsoluteUri', 'http://localhost/phpmyadmin'); $request = ServerRequestFactory::create()->createServerRequest('GET', 'http://example.com/'); $controller = new PhpInfoController(new ResponseRenderer(), ResponseFactory::create(), $config); $response = $controller($request); self::assertSame(StatusCodeInterface::STATUS_FOUND, $response->getStatusCode()); self::assertSame('/phpmyadmin/', $response->getHeaderLine('Location')); } }