1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
<?php
declare(strict_types=1);
namespace Doctrine\Tests\ORM\Tools\Console;
use Composer\InstalledVersions;
use DBALConsole\Command\ReservedWordsCommand;
use Doctrine\ORM\Tools\Console\ConsoleRunner;
use Doctrine\ORM\Tools\Console\EntityManagerProvider;
use Doctrine\ORM\Version;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\Group;
use PHPUnit\Framework\TestCase;
use Symfony\Component\Console\Command\Command;
use function class_exists;
#[CoversClass(ConsoleRunner::class)]
#[Group('DDC-3186')]
final class ConsoleRunnerTest extends TestCase
{
public function testCreateApplicationShouldReturnAnApplicationWithTheCorrectCommands(): void
{
$app = ConsoleRunner::createApplication($this->createStub(EntityManagerProvider::class));
self::assertSame(Version::VERSION, $app->getVersion());
if (class_exists(ReservedWordsCommand::class)) {
self::assertTrue($app->has('dbal:reserved-words'));
}
self::assertTrue($app->has('dbal:run-sql'));
self::assertTrue($app->has('orm:clear-cache:region:collection'));
self::assertTrue($app->has('orm:clear-cache:region:entity'));
self::assertTrue($app->has('orm:clear-cache:region:query'));
self::assertTrue($app->has('orm:clear-cache:metadata'));
self::assertTrue($app->has('orm:clear-cache:query'));
self::assertTrue($app->has('orm:clear-cache:result'));
self::assertTrue($app->has('orm:generate-proxies'));
self::assertTrue($app->has('orm:generate:proxies'));
self::assertTrue($app->has('orm:info'));
self::assertTrue($app->has('orm:mapping:describe'));
self::assertTrue($app->has('orm:run-dql'));
self::assertTrue($app->has('orm:schema-tool:create'));
self::assertTrue($app->has('orm:schema-tool:drop'));
self::assertTrue($app->has('orm:schema-tool:update'));
self::assertTrue($app->has('orm:validate-schema'));
}
public function testCreateApplicationShouldAppendGivenCommands(): void
{
$command = 'my:lovely-command';
$app = ConsoleRunner::createApplication($this->createStub(EntityManagerProvider::class), [new Command($command)]);
self::assertTrue($app->has($command));
}
}
|