소스 검색

[REVIEW] Removed namespace/classname normalization in Zend_Log::factory; prevented usage of CamelCased writer/filter names

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@19556 44c647ce-9c0f-0410-b52a-842ac1e357ba
matthew 16 년 전
부모
커밋
d9588133c9
2개의 변경된 파일12개의 추가작업 그리고 2개의 파일을 삭제
  1. 1 2
      library/Zend/Log.php
  2. 11 0
      tests/Zend/Log/LogTest.php

+ 1 - 2
library/Zend/Log.php

@@ -222,8 +222,7 @@ class Zend_Log
             $namespace = $config[ $type . 'Namespace' ];
         }
 
-        $fullClassName = strtolower($namespace . '_' . $className);
-        $fullClassName = str_replace(' ', '_', ucwords(str_replace('_', ' ', $fullClassName)));
+        $fullClassName = $namespace . '_' . $className;
         return $fullClassName;
     }
 

+ 11 - 0
tests/Zend/Log/LogTest.php

@@ -276,4 +276,15 @@ class Zend_Log_LogTest extends PHPUnit_Framework_TestCase
         $logger = Zend_Log::factory($cfg['log']);
         $this->assertTrue($logger instanceof Zend_Log);
     }
+
+    public function testFactoryUsesNameAndNamespaceWithoutModifications() 
+    {
+        $cfg = array('log' => array('memory' => array(
+            'writerName'      => "ZendMonitor", 
+            'writerNamespace' => "Zend_Log_Writer", 
+        )));
+
+        $logger = Zend_Log::factory($cfg['log']);
+        $this->assertTrue($logger instanceof Zend_Log);
+    }
 }