handle($request); $this->assertSame(200, $response->getStatusCode()); $this->assertSame('application/json', $response->getHeaderLine('Content-Type')); $payload = json_decode((string) $response->getBody(), true); $this->assertIsArray($payload); $this->assertSame('rest', $payload['format'] ?? null); } public function testNoExtensionHonorsWhitelistAndDoesNotBreakRouting(): void { putenv('API_FORMAT=rest'); putenv('URL_EXTENSION_NEGOTIATION=true'); putenv('URL_EXTENSION_WHITELIST=json|php|none'); $root = dirname(__DIR__); /** @var object $app */ $app = require $root . '/bootstrap/app.php'; $request = new ServerRequest('GET', '/_phred/format'); $response = $app->handle($request); $this->assertSame(200, $response->getStatusCode()); $this->assertSame('application/json', $response->getHeaderLine('Content-Type')); $payload = json_decode((string) $response->getBody(), true); $this->assertIsArray($payload); $this->assertSame('rest', $payload['format'] ?? null); } }