From 63c6c6d8759dc570d4639a7ae7f098dac909a0e8 Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Sun, 29 Apr 2012 17:28:35 +0200 Subject: [PATCH] Cache the version parser used in TestCase --- tests/Composer/Test/TestCase.php | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/tests/Composer/Test/TestCase.php b/tests/Composer/Test/TestCase.php index b2c2cc9cd..3756e9fa3 100644 --- a/tests/Composer/Test/TestCase.php +++ b/tests/Composer/Test/TestCase.php @@ -19,19 +19,29 @@ 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) { - $versionParser = new VersionParser(); return new VersionConstraint( $operator, - $versionParser->normalize($version) + self::getVersionParser()->normalize($version) ); } protected function getPackage($name, $version) { - $versionParser = new VersionParser(); - $normVersion = $versionParser->normalize($version); + $normVersion = self::getVersionParser()->normalize($version); + return new MemoryPackage($name, $normVersion, $version); }