diff vendor/composer/installers/tests/Composer/Installers/Test/TestCase.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 7a779792577d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vendor/composer/installers/tests/Composer/Installers/Test/TestCase.php	Wed Nov 29 16:09:58 2017 +0000
@@ -0,0 +1,64 @@
+<?php
+
+/*
+ * This file is part of Composer.
+ *
+ * (c) Nils Adermann <naderman@naderman.de>
+ *     Jordi Boggiano <j.boggiano@seld.be>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Composer\Installers\Test;
+
+use Composer\Package\Version\VersionParser;
+use Composer\Package\Package;
+use Composer\Package\AliasPackage;
+use Composer\Package\LinkConstraint\VersionConstraint;
+use Composer\Util\Filesystem;
+
+abstract class TestCase extends \PHPUnit_Framework_TestCase
+{
+    private static $parser;
+
+    protected static function getVersionParser()
+    {
+        if (!self::$parser) {
+            self::$parser = new VersionParser();
+        }
+
+        return self::$parser;
+    }
+
+    protected function getVersionConstraint($operator, $version)
+    {
+        return new VersionConstraint(
+            $operator,
+            self::getVersionParser()->normalize($version)
+        );
+    }
+
+    protected function getPackage($name, $version)
+    {
+        $normVersion = self::getVersionParser()->normalize($version);
+
+        return new Package($name, $normVersion, $version);
+    }
+
+    protected function getAliasPackage($package, $version)
+    {
+        $normVersion = self::getVersionParser()->normalize($version);
+
+        return new AliasPackage($package, $normVersion, $version);
+    }
+
+    protected function ensureDirectoryExistsAndClear($directory)
+    {
+        $fs = new Filesystem();
+        if (is_dir($directory)) {
+            $fs->removeDirectory($directory);
+        }
+        mkdir($directory, 0777, true);
+    }
+}