opt
/
cpanel
/
ea-wappspector
/
vendor
/
phpunit
/
phpunit
/
src
/
TextUI
/
Command
/
Commands
➕ New
📤 Upload
✎ Editing:
VersionCheckCommand.php
← Back
<?php declare(strict_types=1); /* * This file is part of PHPUnit. * * (c) Sebastian Bergmann <sebastian@phpunit.de> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace PHPUnit\TextUI\Command; use const PHP_EOL; use function assert; use function sprintf; use function version_compare; use PHPUnit\Util\Http\Downloader; /** * @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit * * @internal This class is not covered by the backward compatibility promise for PHPUnit */ final class VersionCheckCommand implements Command { private readonly Downloader $downloader; private readonly int $majorVersionNumber; private readonly string $versionId; public function __construct(Downloader $downloader, int $majorVersionNumber, string $versionId) { $this->downloader = $downloader; $this->majorVersionNumber = $majorVersionNumber; $this->versionId = $versionId; } public function execute(): Result { $latestVersion = $this->downloader->download('https://phar.phpunit.de/latest-version-of/phpunit'); assert($latestVersion !== false); $latestCompatibleVersion = $this->downloader->download('https://phar.phpunit.de/latest-version-of/phpunit-' . $this->majorVersionNumber); assert($latestCompatibleVersion !== false); $notLatest = version_compare($latestVersion, $this->versionId, '>'); $notLatestCompatible = version_compare($latestCompatibleVersion, $this->versionId, '>'); if (!$notLatest && !$notLatestCompatible) { return Result::from( 'You are using the latest version of PHPUnit.' . PHP_EOL, ); } $buffer = 'You are not using the latest version of PHPUnit.' . PHP_EOL; if ($notLatestCompatible) { $buffer .= sprintf( 'The latest version compatible with PHPUnit %s is PHPUnit %s.' . PHP_EOL, $this->versionId, $latestCompatibleVersion, ); } if ($notLatest) { $buffer .= sprintf( 'The latest version is PHPUnit %s.' . PHP_EOL, $latestVersion, ); } return Result::from($buffer); } }
💾 Save Changes
Cancel
📤 Upload File
×
Select File
Upload
Cancel
➕ Create New
×
Type
📄 File
📁 Folder
Name
Create
Cancel
✎ Rename Item
×
Current Name
New Name
Rename
Cancel
🔐 Change Permissions
×
Target File
Permission (e.g., 0755, 0644)
0755
0644
0777
Apply
Cancel