From 3c5bfcf1e9c7bfd48a4a7642243b822a06d995ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Haso=C5=88?= Date: Fri, 19 May 2017 11:40:42 +0200 Subject: [PATCH] Register github repository type --- src/Composer/Repository/RepositoryFactory.php | 1 + .../Test/Repository/RepositoryFactoryTest.php | 47 +++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 tests/Composer/Test/Repository/RepositoryFactoryTest.php diff --git a/src/Composer/Repository/RepositoryFactory.php b/src/Composer/Repository/RepositoryFactory.php index 0ab7ed15c..5e38f961a 100644 --- a/src/Composer/Repository/RepositoryFactory.php +++ b/src/Composer/Repository/RepositoryFactory.php @@ -119,6 +119,7 @@ class RepositoryFactory $rm->setRepositoryClass('package', 'Composer\Repository\PackageRepository'); $rm->setRepositoryClass('pear', 'Composer\Repository\PearRepository'); $rm->setRepositoryClass('git', 'Composer\Repository\VcsRepository'); + $rm->setRepositoryClass('github', 'Composer\Repository\VcsRepository'); $rm->setRepositoryClass('gitlab', 'Composer\Repository\VcsRepository'); $rm->setRepositoryClass('svn', 'Composer\Repository\VcsRepository'); $rm->setRepositoryClass('fossil', 'Composer\Repository\VcsRepository'); diff --git a/tests/Composer/Test/Repository/RepositoryFactoryTest.php b/tests/Composer/Test/Repository/RepositoryFactoryTest.php new file mode 100644 index 000000000..6f96ea5cd --- /dev/null +++ b/tests/Composer/Test/Repository/RepositoryFactoryTest.php @@ -0,0 +1,47 @@ + + * Jordi Boggiano + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Composer\Test\Repository; + +use Composer\Repository\RepositoryFactory; +use Composer\TestCase; + +class RepositoryFactoryTest extends TestCase +{ + public function testManagerWithAllRepositoryTypes() + { + $manager = RepositoryFactory::manager( + $this->getMock('Composer\IO\IOInterface'), + $this->getMock('Composer\Config') + ); + + $ref = new \ReflectionProperty($manager, 'repositoryClasses'); + $ref->setAccessible(true); + $repositoryClasses = $ref->getValue($manager); + + $this->assertEquals([ + 'composer', + 'vcs', + 'package', + 'pear', + 'git', + 'github', + 'gitlab', + 'svn', + 'fossil', + 'perforce', + 'hg', + 'artifact', + 'path', + ], array_keys($repositoryClasses)); + } +}