Changeset 1090

Show
Ignore:
Timestamp:
11/29/07 23:02:19 (9 months ago)
Author:
mikey
Message:

reworked net::stubbles::util:log::stubMemoryLogAppender to store the logdata objects instead of the log data itself in arrays

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/main/php/net/stubbles/util/log/stubMemoryLogAppender.php

    r1049 r1090  
    1818    /** 
    1919     * stores the logged data and represents the storing medium (memory) 
    20      * @var  array<string:targetName<string:logData>> 
     20     * 
     21     * @var  array<string,array<stubLogData>> 
    2122     */ 
    22     protected $logDataStorage = array(); 
     23    protected $logData = array(); 
    2324 
    2425    /** 
    2526     * getter method 
    2627     * 
    27      * @return array<string: targetName<string: logData>> 
     28     * @return array<string,array<stubLogData>> 
    2829     */ 
    29     public function getLogDataStorage() 
     30    public function getLogData() 
    3031    { 
    31         return $this->logDataStorage
     32        return $this->logData
    3233    } 
    3334 
     
    6061    public function append(stubLogData $logData) 
    6162    { 
    62         $this->logDataStorage[$logData->getTarget()][] = explode(stubLogData::SEPERATOR, $logData->get())
     63        $this->logData[$logData->getTarget()][] = $logData
    6364    } 
    6465 
  • trunk/src/test/php/net/stubbles/util/log/stubMemoryLogAppenderTestCase.php

    r1049 r1090  
    11<?php 
    22/** 
    3  * Test for net.stubbles.util.log.stubMemoryLogAppender. 
     3 * Test for net::stubbles::util:log::stubMemoryLogAppender. 
    44 * 
    55 * @author      Richard Sternagel <richard.sternagel@1und1.de> 
     
    88 */ 
    99stubClassLoader::load('net.stubbles.util.log.stubMemoryLogAppender'); 
    10 Mock::generate('stubSession'); 
    1110Mock::generate('stubLogData'); 
    1211/** 
    13  * Test for net.stubbles.util.log.stubMemoryLogAppender. 
     12 * Test for net::stubbles::util:log::stubMemoryLogAppender. 
    1413 * 
    1514 * @package     stubbles 
     
    2019    /** 
    2120     * instance to test 
    22      * @var  stubMemoryLogAppender  $memoryLogAppender 
     21     * 
     22     * @var  stubMemoryLogAppender 
    2323     */ 
    2424    protected $memoryLogAppender; 
     
    2929    public function setUp() 
    3030    { 
    31         $this->memoryLogAppender = new stubMemoryLogAppender(); 
     31        $this->memoryLogAppender = new stubMemoryLogAppender(); 
    3232    } 
    3333 
     
    3737    public function testAppendWithOneDataRecord() 
    3838    { 
    39         $mockSession  = new MockstubSession(); 
    4039        $mockLogData  = new MockstubLogData(); 
    4140        $mockLogData->setReturnValue('getTarget', 'myTestTarget'); 
    42         $mockLogData->setReturnValue('get', 'a|b|c'); 
    4341        $this->memoryLogAppender->append($mockLogData); 
    44  
    45         $this->assertEqual($this->memoryLogAppender->getLogDataStorage(),  array ( 
    46                                                                                    'myTestTarget' => array ( 
    47                                                                                      0 => array ( 
    48                                                                                        0 => 'a', 
    49                                                                                        1 => 'b', 
    50                                                                                        2 => 'c', 
    51                                                                                      ) 
    52                                                                                    ) 
    53                                                                                  ) 
    54         ); 
     42        $logData = $this->memoryLogAppender->getLogData(); 
     43        $this->assertEqual(count($logData), 1); 
     44        $this->assertTrue(isset($logData['myTestTarget'])); 
     45        $this->assertEqual(count($logData['myTestTarget']), 1); 
     46        $this->assertReference($logData['myTestTarget'][0], $mockLogData); 
    5547    } 
    5648 
     
    6052    public function testAppendWithMoreThanOneDataRecord() 
    6153    { 
    62         $mockSession  = new MockstubSession(); 
    63         $mockLogData  = new MockstubLogData(); 
     54        $mockLogData = new MockstubLogData(); 
    6455        $mockLogData->setReturnValue('getTarget', 'myTestTarget'); 
    65         $mockLogData->setReturnValue('get', 'a|b|c'); 
    6656        $this->memoryLogAppender->append($mockLogData); 
    6757        $this->memoryLogAppender->append($mockLogData); 
    68  
    69         $this->assertEqual($this->memoryLogAppender->getLogDataStorage(),  array ( 
    70                                                                                    'myTestTarget' => array ( 
    71                                                                                      0 => array ( 
    72                                                                                        0 => 'a', 
    73                                                                                        1 => 'b', 
    74                                                                                        2 => 'c', 
    75                                                                                      ), 
    76                                                                                      1 => array ( 
    77                                                                                        0 => 'a', 
    78                                                                                        1 => 'b', 
    79                                                                                        2 => 'c', 
    80                                                                                      ) 
    81                                                                                    ) 
    82                                                                                  ) 
    83         ); 
     58        $logData = $this->memoryLogAppender->getLogData(); 
     59        $this->assertEqual(count($logData), 1); 
     60        $this->assertTrue(isset($logData['myTestTarget'])); 
     61        $this->assertEqual(count($logData['myTestTarget']), 2); 
     62        $this->assertReference($logData['myTestTarget'][0], $mockLogData); 
     63        $this->assertReference($logData['myTestTarget'][1], $mockLogData); 
    8464    } 
    8565 
     66    /** 
     67     * assure that appended data is stored in array (more than one records) 
     68     */ 
     69    public function testAppendWithMoreThanOneTargets() 
     70    { 
     71        $mockLogData1 = new MockstubLogData(); 
     72        $mockLogData1->setReturnValue('getTarget', 'myTestTarget1'); 
     73        $this->memoryLogAppender->append($mockLogData1); 
     74        $mockLogData2 = new MockstubLogData(); 
     75        $mockLogData2->setReturnValue('getTarget', 'myTestTarget2'); 
     76        $this->memoryLogAppender->append($mockLogData2); 
     77        $logData = $this->memoryLogAppender->getLogData(); 
     78        $this->assertEqual(count($logData), 2); 
     79        $this->assertTrue(isset($logData['myTestTarget1'])); 
     80        $this->assertEqual(count($logData['myTestTarget1']), 1); 
     81        $this->assertReference($logData['myTestTarget1'][0], $mockLogData1); 
     82        $this->assertTrue(isset($logData['myTestTarget2'])); 
     83        $this->assertEqual(count($logData['myTestTarget2']), 1); 
     84        $this->assertReference($logData['myTestTarget2'][0], $mockLogData2); 
     85    } 
    8686} 
    8787?>