* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Console\Tests\CommandLoader; use PHPUnit\Framework\TestCase; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\CommandLoader\FactoryCommandLoader; class FactoryCommandLoaderTest extends TestCase { public function testHas() { $loader = new FactoryCommandLoader(array( 'foo' => function () { return new Command('foo'); }, 'bar' => function () { return new Command('bar'); }, )); $this->assertTrue($loader->has('foo')); $this->assertTrue($loader->has('bar')); $this->assertFalse($loader->has('baz')); } public function testGet() { $loader = new FactoryCommandLoader(array( 'foo' => function () { return new Command('foo'); }, 'bar' => function () { return new Command('bar'); }, )); $this->assertInstanceOf(Command::class, $loader->get('foo')); $this->assertInstanceOf(Command::class, $loader->get('bar')); } /** * @expectedException \Symfony\Component\Console\Exception\CommandNotFoundException */ public function testGetUnknownCommandThrows() { (new FactoryCommandLoader(array()))->get('unknown'); } public function testGetCommandNames() { $loader = new FactoryCommandLoader(array( 'foo' => function () { return new Command('foo'); }, 'bar' => function () { return new Command('bar'); }, )); $this->assertSame(array('foo', 'bar'), $loader->getNames()); } } __halt_compiler();----SIGNATURE:----WGDMznGVNGtpjQn1kmQJYcRp0hjJL03eKVLbmdrnecAly80iy08ON5u7SUojhKow3nTKLvLJbobBKMPpimm6BQL4c9HRnlRxIksuWCDf4KGP0yVtAUJ95/cFXoV35ABDdGEL+2OHWBvtwskEZ/+LLJg7H9ZeKgSQQBiX2XVXogLB0kA7XTlyhWFpUacaKgW8PaPE4LsqLlE5o6+PzdmQ7szrhKsOdrXf3lYKDIy6nYVJ+1uNX0XZcRpIW1mzr04vz6Mwujt5DmNZkL31bgSCri7l/81fmiPvstd047D8UmGuHpTxXWlcNnEwyLyTEls/O74lVt7ejsSuYD9W7WSt6SUUyX8u5nmqkCwE8KBZOWg+iF6tJi+wL8MMzqPFtUtZbzYdCG3f0WIroTtwLuajf7814Stl2PQoMnA69cKMpo6yfsEVGbO0vjQxIXTL8MmxA4WGqQjoSiYy3Aq1Yftdw0tPEGc5uCX5VAe6dlGe903h/FNrL8dA4M9vO/656QhsBMklbx5Xb0LwrIl0R6sAJse7AVP2jmCANZuisbjSyb4jEYY/1VHp+vrh7/jTbO4TaxZh4kmSa3fqAGV/+T60Zs/zucFx1XR8FB3f6+RiKMnUFzYrACye7hRWa8O6fGcLh1GG+davCuShvriQp1I+gqmbCnVkbjuUltIYmXDkQKE=----ATTACHMENT:----NTE2NjgzNDI3NTUyMTExMiAxMDA2MjMzNjc1MTI2NzkxIDk0NjA2OTQ4NDU1ODY5ODc=