diff --git a/admin/framework/composer.json b/admin/framework/composer.json index 95ea60802e1c..78bd71deb0c0 100644 --- a/admin/framework/composer.json +++ b/admin/framework/composer.json @@ -24,7 +24,18 @@ "predis/predis": "^1.1 || ^2.0" }, "suggest": { - "ext-fileinfo": "Improves mime type detection for files" + "ext-imagick": "If you use Image class ImageMagickHandler", + "ext-simplexml": "If you format XML", + "ext-mysqli": "If you use MySQL", + "ext-oci8": "If you use Oracle Database", + "ext-pgsql": "If you use PostgreSQL", + "ext-sqlsrv": "If you use SQL Server", + "ext-sqlite3": "If you use SQLite3", + "ext-memcache": "If you use Cache class MemcachedHandler with Memcache", + "ext-memcached": "If you use Cache class MemcachedHandler with Memcached", + "ext-redis": "If you use Cache class RedisHandler", + "ext-fileinfo": "Improves mime type detection for files", + "ext-readline": "Improves CLI::input() usability" }, "autoload": { "psr-4": { diff --git a/tests/AutoReview/ComposerJsonTest.php b/tests/AutoReview/ComposerJsonTest.php index 2d205c5fc872..27044861b72f 100644 --- a/tests/AutoReview/ComposerJsonTest.php +++ b/tests/AutoReview/ComposerJsonTest.php @@ -24,25 +24,30 @@ */ final class ComposerJsonTest extends TestCase { - public function testFrameworkRequireIsTheSameWithDevRequire(): void + private array $devComposer; + private array $frameworkComposer; + + protected function setUp(): void { - $devComposer = $this->getComposerJson(dirname(__DIR__, 2) . '/composer.json'); - $frameworkComposer = $this->getComposerJson(dirname(__DIR__, 2) . '/admin/framework/composer.json'); + parent::setUp(); + + $this->devComposer = $this->getComposerJson(dirname(__DIR__, 2) . '/composer.json'); + $this->frameworkComposer = $this->getComposerJson(dirname(__DIR__, 2) . '/admin/framework/composer.json'); + } + public function testFrameworkRequireIsTheSameWithDevRequire(): void + { $this->assertSame( - $devComposer['require'], - $frameworkComposer['require'], + $this->devComposer['require'], + $this->frameworkComposer['require'], 'The framework\'s "require" section is not updated with the main composer.json.' ); } public function testFrameworkRequireDevIsTheSameWithDevRequireDev(): void { - $devComposer = $this->getComposerJson(dirname(__DIR__, 2) . '/composer.json'); - $frameworkComposer = $this->getComposerJson(dirname(__DIR__, 2) . '/admin/framework/composer.json'); - - $devRequireDev = $devComposer['require-dev']; - $fwRequireDev = $frameworkComposer['require-dev']; + $devRequireDev = $this->devComposer['require-dev']; + $fwRequireDev = $this->frameworkComposer['require-dev']; foreach ($devRequireDev as $dependency => $expectedVersion) { if (! isset($fwRequireDev[$dependency])) { @@ -62,6 +67,15 @@ public function testFrameworkRequireDevIsTheSameWithDevRequireDev(): void } } + public function testFrameworkSuggestIsTheSameWithDevSuggest(): void + { + $this->assertSame( + $this->devComposer['suggest'], + $this->frameworkComposer['suggest'], + 'The framework\'s "suggest" section is not updated with the main composer.json.' + ); + } + private function getComposerJson(string $path): array { try {