diff vendor/composer/installers/tests/Composer/Installers/Test/MediaWikiInstallerTest.php @ 0:c75dbcec494b

Initial commit from drush-created site
author Chris Cannam
date Thu, 05 Jul 2018 14:24:15 +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/MediaWikiInstallerTest.php	Thu Jul 05 14:24:15 2018 +0000
@@ -0,0 +1,67 @@
+<?php
+namespace Composer\Installers\Test;
+
+use Composer\Installers\MediaWikiInstaller;
+use Composer\Package\Package;
+use Composer\Composer;
+use PHPUnit\Framework\TestCase as BaseTestCase;
+
+class MediaWikiInstallerTest extends BaseTestCase
+{
+    /**
+     * @var MediaWikiInstaller
+     */
+    private $installer;
+
+    public function setUp()
+    {
+        $this->installer = new MediaWikiInstaller(
+            new Package('NyanCat', '4.2', '4.2'),
+            new Composer()
+        );
+    }
+
+    /**
+     * @dataProvider packageNameInflectionProvider
+     */
+    public function testInflectPackageVars($type, $name, $expected)
+    {
+        $this->assertEquals(
+            $this->installer->inflectPackageVars(array('name' => $name, 'type'=>$type)),
+            array('name' => $expected, 'type'=>$type)
+        );
+    }
+
+    public function packageNameInflectionProvider()
+    {
+        return array(
+            array(
+                'mediawiki-extension',
+                'sub-page-list',
+                'SubPageList',
+            ),
+            array(
+                'mediawiki-extension',
+                'sub-page-list-extension',
+                'SubPageList',
+            ),
+            array(
+                'mediawiki-extension',
+                'semantic-mediawiki',
+                'SemanticMediawiki',
+            ),
+            // tests that exactly one '-skin' is cut off, and that skins do not get ucwords treatment like extensions
+            array(
+                'mediawiki-skin',
+                'some-skin-skin',
+                'some-skin',
+            ),
+            // tests that names without '-skin' suffix stay valid
+            array(
+                'mediawiki-skin',
+                'someotherskin',
+                'someotherskin',
+            ),
+        );
+    }
+}