LoggerNamedPatternConverter.php
Current file: /home/ihabunek/apache/log4php/src/main/php/helpers/LoggerNamedPatternConverter.php
Legend: executed not executed dead code

  Coverage
  Classes Functions / Methods Lines
Total
0.00% 0 / 1
33.33% 1 / 3 CRAP
80.00% 12 / 15
LoggerNamedPatternConverter
0.00% 0 / 1
33.33% 1 / 3 6.29
80.00% 12 / 15
 __construct($formattingInfo, $precision)
100.00% 1 / 1 1
100.00% 3 / 3
 getFullyQualifiedName($event)
0.00% 0 / 1 2
0.00% 0 / 1
 convert($event)
0.00% 0 / 1 4.10
81.82% 9 / 11


       1                 : <?php                                                                                
       2                 : /**                                                                                  
       3                 :  * Licensed to the Apache Software Foundation (ASF) under one or more                
       4                 :  * contributor license agreements. See the NOTICE file distributed with              
       5                 :  * this work for additional information regarding copyright ownership.               
       6                 :  * The ASF licenses this file to You under the Apache License, Version 2.0           
       7                 :  * (the "License"); you may not use this file except in compliance with              
       8                 :  * the License. You may obtain a copy of the License at                              
       9                 :  *                                                                                   
      10                 :  *       http://www.apache.org/licenses/LICENSE-2.0                                  
      11                 :  *                                                                                   
      12                 :  * Unless required by applicable law or agreed to in writing, software               
      13                 :  * distributed under the License is distributed on an "AS IS" BASIS,                 
      14                 :  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.          
      15                 :  * See the License for the specific language governing permissions and               
      16                 :  * limitations under the License.                                                    
      17                 :  *                                                                                   
      18                 :  * @package log4php                                                                  
      19                 :  */                                                                                  
      20                 :                                                                                      
      21                 : /**                                                                                  
      22                 :  * @package log4php                                                                  
      23                 :  * @subpackage helpers                                                               
      24                 :  */                                                                                  
      25                 : class LoggerNamedPatternConverter extends LoggerPatternConverter {                   
      26                 :                                                                                      
      27                 :     /**                                                                              
      28                 :      * @var integer                                                                  
      29                 :      */                                                                              
      30                 :     private $precision;                                                              
      31                 :                                                                                      
      32                 :     /**                                                                              
      33                 :      * Constructor                                                                   
      34                 :      *                                                                               
      35                 :      * @param string $formattingInfo                                                 
      36                 :      * @param integer $precision                                                     
      37                 :      */                                                                              
      38                 :     public function __construct($formattingInfo, $precision) {                       
      39              14 :         parent::__construct($formattingInfo);                                        
      40              14 :         $this->precision = $precision;                                               
      41              14 :     }                                                                                
      42                 :                                                                                      
      43                 :     /**                                                                              
      44                 :      * @param LoggerLoggingEvent $event                                              
      45                 :      * @return string                                                                
      46                 :      */                                                                              
      47                 :     public function getFullyQualifiedName($event) {                                  
      48               0 :         return;                                                                      
      49                 :     }                                                                                
      50                 :                                                                                      
      51                 :     /**                                                                              
      52                 :      * @param LoggerLoggingEvent $event                                              
      53                 :      * @return string                                                                
      54                 :      */                                                                              
      55                 :     function convert($event) {                                                       
      56              13 :         $n = $this->getFullyQualifiedName($event);                                   
      57              13 :         if($this->precision <= 0) {                                                  
      58              11 :             return $n;                                                               
      59                 :         } else {                                                                     
      60                 :                                                                                      
      61                 :             // TODO: do this with explode()                                          
      62                 :                                                                                      
      63               7 :             $len = strlen($n);                                                       
      64                 :             // We substract 1 from 'len' when assigning to 'end' to avoid out of     
      65                 :             // bounds exception in return r.substring(end+1, len). This can happen if
      66                 :             // precision is 1 and the category name ends with a dot.                 
      67               7 :             $end = $len -1 ;                                                         
      68               7 :             for($i = $this->precision; $i > 0; $i--) {                               
      69               7 :                 $end = strrpos(substr($n, 0, ($end - 1)), '.');                      
      70               7 :                 if($end == false) {                                                  
      71               7 :                     return $n;                                                       
      72                 :                 }                                                                    
      73               0 :             }                                                                        
      74               0 :             return substr($n, ($end + 1), $len);                                     
      75                 :         }                                                                            
      76                 :     }                                                                                
      77                 : }                                                                                    

Generated by PHP_CodeCoverage 1.1.1 using PHP 5.3.3-7+squeeze3 and PHPUnit 3.6.3 at Sat Feb 18 22:32:39 GMT 2012.