From a0dc3994d49369efd7188efde51e9774895d1c54 Mon Sep 17 00:00:00 2001 From: Geoff Date: Fri, 15 Jan 2016 15:06:34 -0800 Subject: [PATCH] [ClassLoader] Use symfony/polyfill-apcu --- .../Component/ClassLoader/ApcUniversalClassLoader.php | 6 +++--- .../ClassLoader/Tests/ApcUniversalClassLoaderTest.php | 9 +++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php b/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php index 3a3a8a4a4471..bedb30f8955e 100644 --- a/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php +++ b/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php @@ -71,7 +71,7 @@ class ApcUniversalClassLoader extends UniversalClassLoader */ public function __construct($prefix) { - if (!extension_loaded('apc')) { + if (!function_exists('apcu_fetch')) { throw new \RuntimeException('Unable to use ApcUniversalClassLoader as APC is not enabled.'); } @@ -87,8 +87,8 @@ public function __construct($prefix) */ public function findFile($class) { - if (false === $file = apc_fetch($this->prefix.$class)) { - apc_store($this->prefix.$class, $file = parent::findFile($class)); + if (false === $file = apcu_fetch($this->prefix.$class)) { + apcu_store($this->prefix.$class, $file = parent::findFile($class)); } return $file; diff --git a/src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php b/src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php index 40046f553011..e1a55a1cdac9 100644 --- a/src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php +++ b/src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php @@ -13,15 +13,12 @@ use Symfony\Component\ClassLoader\ApcUniversalClassLoader; -/** - * @requires extension apc - */ class ApcUniversalClassLoaderTest extends \PHPUnit_Framework_TestCase { protected function setUp() { if (ini_get('apc.enabled') && ini_get('apc.enable_cli')) { - apc_clear_cache('user'); + apcu_clear_cache(); } else { $this->markTestSkipped('APC is not enabled.'); } @@ -30,7 +27,7 @@ protected function setUp() protected function tearDown() { if (ini_get('apc.enabled') && ini_get('apc.enable_cli')) { - apc_clear_cache('user'); + apcu_clear_cache(); } } @@ -39,7 +36,7 @@ public function testConstructor() $loader = new ApcUniversalClassLoader('test.prefix.'); $loader->registerNamespace('Apc\Namespaced', __DIR__.DIRECTORY_SEPARATOR.'Fixtures'); - $this->assertEquals($loader->findFile('\Apc\Namespaced\FooBar'), apc_fetch('test.prefix.\Apc\Namespaced\FooBar'), '__construct() takes a prefix as its first argument'); + $this->assertEquals($loader->findFile('\Apc\Namespaced\FooBar'), apcu_fetch('test.prefix.\Apc\Namespaced\FooBar'), '__construct() takes a prefix as its first argument'); } /**