Mercurial > hg > isophonics-drupal-site
diff vendor/composer/installers/tests/Composer/Installers/Test/SiteDirectInstallerTest.php @ 12:7a779792577d
Update Drupal core to v8.4.5 (via Composer)
author | Chris Cannam |
---|---|
date | Fri, 23 Feb 2018 15:52:07 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/composer/installers/tests/Composer/Installers/Test/SiteDirectInstallerTest.php Fri Feb 23 15:52:07 2018 +0000 @@ -0,0 +1,120 @@ +<?php + +namespace Composer\Installers\Test; + +use Composer\Composer; +use Composer\Installers\SiteDirectInstaller; +use Composer\Package\Package; + +class SiteDirectInstallerTest extends TestCase +{ + /** @var SiteDirectInstaller $installer */ + protected $installer; + + /** @var Package */ + private $package; + + public function SetUp() + { + $this->package = new Package('sitedirect/some_name', '1.0.9', '1.0'); + $this->installer = new SiteDirectInstaller( + $this->package, + new Composer() + ); + + } + + /** + * @dataProvider dataProvider + */ + public function testInflectPackageVars($data, $expected) + { + $result = $this->installer->inflectPackageVars($data); + $this->assertEquals($result, $expected); + } + + /** + * @dataProvider dataProvider + */ + public function testInstallPath($data, $expected) + { + $result = $this->installer->inflectPackageVars($data); + $path = $this->createPackage($data); + + // use $result to get the proper capitalization for the vendor path + $expectedPath = "modules/{$result['vendor']}/{$result['name']}/"; + $notExpectedPath = "modules/{$data['vendor']}/{$data['name']}/"; + $this->assertEquals($expectedPath, $path); + $this->assertNotEquals($notExpectedPath, $path); + } + + /** + * @param $data + * @return string + */ + private function createPackage($data) + { + $fullName = "{$data['vendor']}/{$data['name']}"; + + $package = new Package($fullName, '1.0', '1.0'); + $package->setType('sitedirect-module'); + $installer = new SiteDirectInstaller($package, new Composer()); + + $path = $installer->getInstallPath($package, 'sitedirect'); + return $path; + } + + public function dataProvider() + { + return array( + array( + 'data' => array( + 'name' => 'kernel', + 'vendor' => 'sitedirect', + 'type' => 'sitedirect-module', + ), + 'expected' => array( + 'name' => 'Kernel', + 'vendor' => 'SiteDirect', + 'type' => 'sitedirect-module', + ) + ), + array( + 'data' => array( + 'name' => 'that_guy', + 'vendor' => 'whatGuy', + 'type' => 'sitedirect-module', + ), + 'expected' => array( + 'name' => 'ThatGuy', + 'vendor' => 'whatGuy', + 'type' => 'sitedirect-module', + ) + ), + array( + 'data' => array( + 'name' => 'checkout', + 'vendor' => 'someVendor', + 'type' => 'sitedirect-plugin', + ), + 'expected' => array( + 'name' => 'Checkout', + 'vendor' => 'someVendor', + 'type' => 'sitedirect-plugin', + ) + ), + array( + 'data' => array( + 'name' => 'checkout', + 'vendor' => 'siteDirect', + 'type' => 'sitedirect-plugin', + ), + 'expected' => array( + 'name' => 'Checkout', + 'vendor' => 'SiteDirect', + 'type' => 'sitedirect-plugin', + ) + ), + ); + } +}