* Jordi Boggiano * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Composer\Test; use Composer\Factory; class FactoryTest extends \PHPUnit_Framework_TestCase { /** * @dataProvider dataAddPackagistRepository */ public function testAddPackagistRepository($expected, $config) { $factory = new Factory(); $ref = new \ReflectionMethod($factory, 'addPackagistRepository'); $ref->setAccessible(true); $this->assertEquals($expected, $ref->invoke($factory, $config)); } public function dataAddPackagistRepository() { $f = function() { $repositories = func_get_args(); return array('repositories' => $repositories); }; $data = array(); $data[] = array( $f(array('type' => 'composer', 'url' => 'http://packagist.org')), $f() ); $data[] = array( $f(array('packagist' => false)), $f(array('packagist' => false)) ); $data[] = array( $f( array('type' => 'vcs', 'url' => 'git://github.com/composer/composer.git'), array('type' => 'composer', 'url' => 'http://packagist.org'), array('type' => 'pear', 'url' => 'http://pear.composer.org') ), $f( array('type' => 'vcs', 'url' => 'git://github.com/composer/composer.git'), array('packagist' => true), array('type' => 'pear', 'url' => 'http://pear.composer.org') ) ); return $data; } }