瀏覽代碼

[ZF-9883] Zend_Memory

- Fixed support to cache backends Zend_Server.

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@23553 44c647ce-9c0f-0410-b52a-842ac1e357ba
ramon 15 年之前
父節點
當前提交
0c1e4ce6e0
共有 2 個文件被更改,包括 34 次插入1 次删除
  1. 1 1
      library/Zend/Memory.php
  2. 33 0
      tests/Zend/Memory/MemoryTest.php

+ 1 - 1
library/Zend/Memory.php

@@ -56,7 +56,7 @@ class Zend_Memory
         // Look through available backendsand
         // (that allows to specify it in any case)
         $backendIsFound = false;
-        foreach (Zend_Cache::$availableBackends as $zendCacheBackend) {
+        foreach (Zend_Cache::$standardBackends as $zendCacheBackend) {
             if (strcasecmp($backend, $zendCacheBackend) == 0) {
                 $backend = $zendCacheBackend;
                 $backendIsFound = true;

+ 33 - 0
tests/Zend/Memory/MemoryTest.php

@@ -88,6 +88,39 @@ class Zend_Memory_MemoryTest extends PHPUnit_Framework_TestCase
         $this->assertTrue($memoryManager instanceof Zend_Memory_Manager);
         unset($memoryManager);
     }
+
+    /**
+     * @group ZF-9883
+     * @dataProvider Zend_Memory_MemoryTest::providerCacheBackend
+     */
+    public function testFactoryCacheBackendStandards($backend)
+    {
+        try {
+            $memoryManager = Zend_Memory::factory($backend);
+        } catch(Zend_Cache_Exception $exception) {
+            $this->markTestSkipped($exception->getMessage());
+        }
+        $this->assertTrue($memoryManager instanceof Zend_Memory_Manager);
+    }
+
+    /**
+     * @group ZF-9883
+     */
+    public function providerCacheBackend()
+    {
+        return array(
+            array('Apc'),
+            array('File'),
+            array('Libmemcached'),
+            array('Memcached'),
+            array('Sqlite'),
+            array('TwoLevels'),
+            array('Xcache'),
+            array('ZendPlatform'),
+            array('ZendServer_Disk'),
+            array('ZendServer_ShMem')
+        );
+    }
 }
 
 if (PHPUnit_MAIN_METHOD == 'Zend_Memory_MemoryTest::main') {