blob: 3fb1a72f0dfd59172e7500eeb9e71bb59f19fe55 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LoggerAppenderEcho.php</title>
<link rel="stylesheet" type="text/css" href="style.css">
<link rel="stylesheet" type="text/css" href="container.css">
<script type="text/javascript" src="yahoo-dom-event.js"></script>
<script type="text/javascript" src="container-min.js"></script>
</head>
<body class="yui-skin-sam">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td class="title">LoggerAppenderEcho.php</td></tr>
<tr><td class="ruler"><img src="glass.png" width="3" height="3" alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding="1" border="0" width="100%">
<tr>
<td class="headerItem" width="20%">Current file:</td>
<td class="headerValue" width="80%"><a href="index.html">/home/ihabunek/apache/log4php/src/main/php</a>/<a href="appenders.html">appenders</a>/<a href="appenders_LoggerAppenderEcho.php.html">LoggerAppenderEcho.php</a></td>
</tr>
<tr>
<td class="legendItem" width="20%">Legend:</td>
<td class="legendValue" width="80%">
<span class="legendCov">executed</span>
<span class="legendNoCov">not executed</span>
<span class="legendDeadCode">dead code</span>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="ruler"><img src="glass.png" width="3" height="3" alt=""></td>
</tr>
</table>
<br />
<center>
<table width="90%" cellpadding="2" cellspacing="1" border="0">
<tr>
<td class="tableHead" width="30%">&nbsp;</td>
<td class="tableHead" colspan="10">Coverage</td>
</tr>
<tr>
<td class="tableHead">&nbsp;</td>
<td class="tableHead" colspan="3">Classes</td>
<td class="tableHead" colspan="4">Functions / Methods</td>
<td class="tableHead" colspan="3">Lines</td>
</tr>
<tr>
<td class="coverDirectory">Total</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">4 / 4</td>
<td class="crap"><acronym title="Change Risk Anti-Patterns (CRAP) Index">CRAP</acronym></td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">22 / 22</td>
</tr>
<tr>
<td class="coverDirectory">LoggerAppenderEcho</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">4 / 4</td>
<td class="crap">9</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">22 / 22</td>
</tr>
<tr>
<td class="coverFile" colspan="4">&nbsp;<a href="#53">close()</a></td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
<td class="crap">3</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">7 / 7</td>
</tr>
<tr>
<td class="coverFile" colspan="4">&nbsp;<a href="#62">append(LoggerLoggingEvent $event)</a></td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
<td class="crap">4</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">12 / 12</td>
</tr>
<tr>
<td class="coverFile" colspan="4">&nbsp;<a href="#77">setHtmlLineBreaks($value)</a></td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
<td class="crap">1</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">2 / 2</td>
</tr>
<tr>
<td class="coverFile" colspan="4">&nbsp;<a href="#81">getHtmlLineBreaks()</a></td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
<td class="crap">1</td>
<td class="coverBar">
<div class="coverBarOutline" title="100.00%">
<div class="size chameleon" style="width:100%" title="100.00%"></div>
</div>
</td>
<td class="coverPerHi">100.00%</td>
<td class="coverNumHi">1 / 1</td>
</tr>
</table>
</center>
<br />
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td><br /></td>
</tr>
<tr>
<td>
<pre class="source">
<span class="lineNum" id="container1"><a name="1"></a><a href="#1" id="line1"> 1</a> </span> : &lt;?php
<span class="lineNum" id="container2"><a name="2"></a><a href="#2" id="line2"> 2</a> </span> : /**
<span class="lineNum" id="container3"><a name="3"></a><a href="#3" id="line3"> 3</a> </span> : * Licensed to the Apache Software Foundation (ASF) under one or more
<span class="lineNum" id="container4"><a name="4"></a><a href="#4" id="line4"> 4</a> </span> : * contributor license agreements. See the NOTICE file distributed with
<span class="lineNum" id="container5"><a name="5"></a><a href="#5" id="line5"> 5</a> </span> : * this work for additional information regarding copyright ownership.
<span class="lineNum" id="container6"><a name="6"></a><a href="#6" id="line6"> 6</a> </span> : * The ASF licenses this file to You under the Apache License, Version 2.0
<span class="lineNum" id="container7"><a name="7"></a><a href="#7" id="line7"> 7</a> </span> : * (the &quot;License&quot;); you may not use this file except in compliance with
<span class="lineNum" id="container8"><a name="8"></a><a href="#8" id="line8"> 8</a> </span> : * the License. You may obtain a copy of the License at
<span class="lineNum" id="container9"><a name="9"></a><a href="#9" id="line9"> 9</a> </span> : *
<span class="lineNum" id="container10"><a name="10"></a><a href="#10" id="line10"> 10</a> </span> : * http://www.apache.org/licenses/LICENSE-2.0
<span class="lineNum" id="container11"><a name="11"></a><a href="#11" id="line11"> 11</a> </span> : *
<span class="lineNum" id="container12"><a name="12"></a><a href="#12" id="line12"> 12</a> </span> : * Unless required by applicable law or agreed to in writing, software
<span class="lineNum" id="container13"><a name="13"></a><a href="#13" id="line13"> 13</a> </span> : * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
<span class="lineNum" id="container14"><a name="14"></a><a href="#14" id="line14"> 14</a> </span> : * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
<span class="lineNum" id="container15"><a name="15"></a><a href="#15" id="line15"> 15</a> </span> : * See the License for the specific language governing permissions and
<span class="lineNum" id="container16"><a name="16"></a><a href="#16" id="line16"> 16</a> </span> : * limitations under the License.
<span class="lineNum" id="container17"><a name="17"></a><a href="#17" id="line17"> 17</a> </span> : *
<span class="lineNum" id="container18"><a name="18"></a><a href="#18" id="line18"> 18</a> </span> : * @package log4php
<span class="lineNum" id="container19"><a name="19"></a><a href="#19" id="line19"> 19</a> </span> : */
<span class="lineNum" id="container20"><a name="20"></a><a href="#20" id="line20"> 20</a> </span> :
<span class="lineNum" id="container21"><a name="21"></a><a href="#21" id="line21"> 21</a> </span> : /**
<span class="lineNum" id="container22"><a name="22"></a><a href="#22" id="line22"> 22</a> </span> : * LoggerAppenderEcho uses {@link PHP_MANUAL#echo echo} function to output events.
<span class="lineNum" id="container23"><a name="23"></a><a href="#23" id="line23"> 23</a> </span> : *
<span class="lineNum" id="container24"><a name="24"></a><a href="#24" id="line24"> 24</a> </span> : * &lt;p&gt;This appender requires a layout.&lt;/p&gt;
<span class="lineNum" id="container25"><a name="25"></a><a href="#25" id="line25"> 25</a> </span> : *
<span class="lineNum" id="container26"><a name="26"></a><a href="#26" id="line26"> 26</a> </span> : * An example php file:
<span class="lineNum" id="container27"><a name="27"></a><a href="#27" id="line27"> 27</a> </span> : *
<span class="lineNum" id="container28"><a name="28"></a><a href="#28" id="line28"> 28</a> </span> : * {@example ../../examples/php/appender_echo.php 19}
<span class="lineNum" id="container29"><a name="29"></a><a href="#29" id="line29"> 29</a> </span> : *
<span class="lineNum" id="container30"><a name="30"></a><a href="#30" id="line30"> 30</a> </span> : * An example configuration file:
<span class="lineNum" id="container31"><a name="31"></a><a href="#31" id="line31"> 31</a> </span> : *
<span class="lineNum" id="container32"><a name="32"></a><a href="#32" id="line32"> 32</a> </span> : * {@example ../../examples/resources/appender_echo.properties 18}
<span class="lineNum" id="container33"><a name="33"></a><a href="#33" id="line33"> 33</a> </span> : *
<span class="lineNum" id="container34"><a name="34"></a><a href="#34" id="line34"> 34</a> </span> : * The above example would print the following:
<span class="lineNum" id="container35"><a name="35"></a><a href="#35" id="line35"> 35</a> </span> : * &lt;pre&gt;
<span class="lineNum" id="container36"><a name="36"></a><a href="#36" id="line36"> 36</a> </span> : * Tue Sep 8 22:44:55 2009,812 [6783] DEBUG appender_echo - Hello World!
<span class="lineNum" id="container37"><a name="37"></a><a href="#37" id="line37"> 37</a> </span> : * &lt;/pre&gt;
<span class="lineNum" id="container38"><a name="38"></a><a href="#38" id="line38"> 38</a> </span> : *
<span class="lineNum" id="container39"><a name="39"></a><a href="#39" id="line39"> 39</a> </span> : * @version $Revision: 1213283 $
<span class="lineNum" id="container40"><a name="40"></a><a href="#40" id="line40"> 40</a> </span> : * @package log4php
<span class="lineNum" id="container41"><a name="41"></a><a href="#41" id="line41"> 41</a> </span> : * @subpackage appenders
<span class="lineNum" id="container42"><a name="42"></a><a href="#42" id="line42"> 42</a> </span> : */
<span class="lineNum" id="container43"><a name="43"></a><a href="#43" id="line43"> 43</a> </span> : class LoggerAppenderEcho extends LoggerAppender {
<span class="lineNum" id="container44"><a name="44"></a><a href="#44" id="line44"> 44</a> </span> : /** boolean used internally to mark first append */
<span class="lineNum" id="container45"><a name="45"></a><a href="#45" id="line45"> 45</a> </span> : protected $firstAppend = true;
<span class="lineNum" id="container46"><a name="46"></a><a href="#46" id="line46"> 46</a> </span> :
<span class="lineNum" id="container47"><a name="47"></a><a href="#47" id="line47"> 47</a> </span> : /**
<span class="lineNum" id="container48"><a name="48"></a><a href="#48" id="line48"> 48</a> </span> : * If set to true, a &lt;br /&gt; element will be inserted before each line
<span class="lineNum" id="container49"><a name="49"></a><a href="#49" id="line49"> 49</a> </span> : * break in the logged message. Default value is false. @var boolean
<span class="lineNum" id="container50"><a name="50"></a><a href="#50" id="line50"> 50</a> </span> : */
<span class="lineNum" id="container51"><a name="51"></a><a href="#51" id="line51"> 51</a> </span> : protected $htmlLineBreaks = false;
<span class="lineNum" id="container52"><a name="52"></a><a href="#52" id="line52"> 52</a> </span> :
<span class="lineNum" id="container53"><a name="53"></a><a href="#53" id="line53"> 53</a> </span> : public function close() {
<span class="lineNum" id="container54"><a name="54"></a><a href="#54" id="line54"> 54</a> </span><span class="lineCov"> 24 : if($this-&gt;closed != true) { </span>
<span class="lineNum" id="container55"><a name="55"></a><a href="#55" id="line55"> 55</a> </span><span class="lineCov"> 24 : if(!$this-&gt;firstAppend) { </span>
<span class="lineNum" id="container56"><a name="56"></a><a href="#56" id="line56"> 56</a> </span><span class="lineCov"> 8 : echo $this-&gt;layout-&gt;getFooter(); </span>
<span class="lineNum" id="container57"><a name="57"></a><a href="#57" id="line57"> 57</a> </span><span class="lineCov"> 8 : } </span>
<span class="lineNum" id="container58"><a name="58"></a><a href="#58" id="line58"> 58</a> </span><span class="lineCov"> 24 : } </span>
<span class="lineNum" id="container59"><a name="59"></a><a href="#59" id="line59"> 59</a> </span><span class="lineCov"> 24 : $this-&gt;closed = true; </span>
<span class="lineNum" id="container60"><a name="60"></a><a href="#60" id="line60"> 60</a> </span><span class="lineCov"> 24 : } </span>
<span class="lineNum" id="container61"><a name="61"></a><a href="#61" id="line61"> 61</a> </span> :
<span class="lineNum" id="container62"><a name="62"></a><a href="#62" id="line62"> 62</a> </span> : public function append(LoggerLoggingEvent $event) {
<span class="lineNum" id="container63"><a name="63"></a><a href="#63" id="line63"> 63</a> </span><span class="lineCov"> 12 : if($this-&gt;layout !== null) { </span>
<span class="lineNum" id="container64"><a name="64"></a><a href="#64" id="line64"> 64</a> </span><span class="lineCov"> 12 : if($this-&gt;firstAppend) { </span>
<span class="lineNum" id="container65"><a name="65"></a><a href="#65" id="line65"> 65</a> </span><span class="lineCov"> 12 : echo $this-&gt;layout-&gt;getHeader(); </span>
<span class="lineNum" id="container66"><a name="66"></a><a href="#66" id="line66"> 66</a> </span><span class="lineCov"> 12 : $this-&gt;firstAppend = false; </span>
<span class="lineNum" id="container67"><a name="67"></a><a href="#67" id="line67"> 67</a> </span><span class="lineCov"> 12 : } </span>
<span class="lineNum" id="container68"><a name="68"></a><a href="#68" id="line68"> 68</a> </span><span class="lineCov"> 12 : $text = $this-&gt;layout-&gt;format($event); </span>
<span class="lineNum" id="container69"><a name="69"></a><a href="#69" id="line69"> 69</a> </span> :
<span class="lineNum" id="container70"><a name="70"></a><a href="#70" id="line70"> 70</a> </span><span class="lineCov"> 12 : if ($this-&gt;htmlLineBreaks) { </span>
<span class="lineNum" id="container71"><a name="71"></a><a href="#71" id="line71"> 71</a> </span><span class="lineCov"> 2 : $text = nl2br($text); </span>
<span class="lineNum" id="container72"><a name="72"></a><a href="#72" id="line72"> 72</a> </span><span class="lineCov"> 2 : } </span>
<span class="lineNum" id="container73"><a name="73"></a><a href="#73" id="line73"> 73</a> </span><span class="lineCov"> 12 : echo $text; </span>
<span class="lineNum" id="container74"><a name="74"></a><a href="#74" id="line74"> 74</a> </span><span class="lineCov"> 12 : } </span>
<span class="lineNum" id="container75"><a name="75"></a><a href="#75" id="line75"> 75</a> </span><span class="lineCov"> 12 : } </span>
<span class="lineNum" id="container76"><a name="76"></a><a href="#76" id="line76"> 76</a> </span> :
<span class="lineNum" id="container77"><a name="77"></a><a href="#77" id="line77"> 77</a> </span> : public function setHtmlLineBreaks($value) {
<span class="lineNum" id="container78"><a name="78"></a><a href="#78" id="line78"> 78</a> </span><span class="lineCov"> 3 : $this-&gt;setBoolean('htmlLineBreaks', $value); </span>
<span class="lineNum" id="container79"><a name="79"></a><a href="#79" id="line79"> 79</a> </span><span class="lineCov"> 3 : } </span>
<span class="lineNum" id="container80"><a name="80"></a><a href="#80" id="line80"> 80</a> </span> :
<span class="lineNum" id="container81"><a name="81"></a><a href="#81" id="line81"> 81</a> </span> : public function getHtmlLineBreaks() {
<span class="lineNum" id="container82"><a name="82"></a><a href="#82" id="line82"> 82</a> </span><span class="lineCov"> 2 : return $this-&gt;htmlLineBreaks; </span>
<span class="lineNum" id="container83"><a name="83"></a><a href="#83" id="line83"> 83</a> </span> : }
<span class="lineNum" id="container84"><a name="84"></a><a href="#84" id="line84"> 84</a> </span> : }
<span class="lineNum" id="container85"><a name="85"></a><a href="#85" id="line85"> 85</a> </span> :
</pre>
</td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td class="ruler"><img src="glass.png" width="3" height="3" alt=""></td></tr>
<tr><td class="versionInfo">Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.1.1</a> using <a href="http://www.php.net/" target="_top">PHP 5.3.3-7+squeeze3</a> and PHPUnit 3.6.3 at Sat Feb 18 22:32:39 GMT 2012.</td></tr>
</table>
<br />
<script type="text/javascript">
//<![CDATA[
$E = YAHOO.util.Event;
YAHOO.namespace("phpunit.container");
YAHOO.phpunit.container.panelsData = {
"panel54": {
"header": "24 tests cover line 54",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testDefaultConfig</li><li class=\"testPassed\">LoggerConfiguratorTest::testInvalidLoggerAddivity</li><li class=\"testPassed\">LoggerConfiguratorTest::testNonexistantFileFallback</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerConfiguratorTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppenderThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testLoggerThreshold</li><li class=\"testPassed\">LoggerTest::testLoggerExist</li><li class=\"testPassed\">LoggerTest::testCanGetRootLogger</li><li class=\"testPassed\">LoggerTest::testCanGetASpecificLogger</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerTest::testIsEnabledFor</li><li class=\"testPassed\">LoggerTest::testGetCurrentLoggers</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRenderDescendants</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByObject</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByClassName</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel55": {
"header": "24 tests cover line 55",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testDefaultConfig</li><li class=\"testPassed\">LoggerConfiguratorTest::testInvalidLoggerAddivity</li><li class=\"testPassed\">LoggerConfiguratorTest::testNonexistantFileFallback</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerConfiguratorTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppenderThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testLoggerThreshold</li><li class=\"testPassed\">LoggerTest::testLoggerExist</li><li class=\"testPassed\">LoggerTest::testCanGetRootLogger</li><li class=\"testPassed\">LoggerTest::testCanGetASpecificLogger</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerTest::testIsEnabledFor</li><li class=\"testPassed\">LoggerTest::testGetCurrentLoggers</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRenderDescendants</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByObject</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByClassName</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel56": {
"header": "8 tests cover line 56",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li></ul>",
"footer": ""
},
"panel57": {
"header": "8 tests cover line 57",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li></ul>",
"footer": ""
},
"panel58": {
"header": "24 tests cover line 58",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testDefaultConfig</li><li class=\"testPassed\">LoggerConfiguratorTest::testInvalidLoggerAddivity</li><li class=\"testPassed\">LoggerConfiguratorTest::testNonexistantFileFallback</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerConfiguratorTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppenderThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testLoggerThreshold</li><li class=\"testPassed\">LoggerTest::testLoggerExist</li><li class=\"testPassed\">LoggerTest::testCanGetRootLogger</li><li class=\"testPassed\">LoggerTest::testCanGetASpecificLogger</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerTest::testIsEnabledFor</li><li class=\"testPassed\">LoggerTest::testGetCurrentLoggers</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRenderDescendants</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByObject</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByClassName</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel59": {
"header": "24 tests cover line 59",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testDefaultConfig</li><li class=\"testPassed\">LoggerConfiguratorTest::testInvalidLoggerAddivity</li><li class=\"testPassed\">LoggerConfiguratorTest::testNonexistantFileFallback</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerConfiguratorTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppenderThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testLoggerThreshold</li><li class=\"testPassed\">LoggerTest::testLoggerExist</li><li class=\"testPassed\">LoggerTest::testCanGetRootLogger</li><li class=\"testPassed\">LoggerTest::testCanGetASpecificLogger</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerTest::testIsEnabledFor</li><li class=\"testPassed\">LoggerTest::testGetCurrentLoggers</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRenderDescendants</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByObject</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByClassName</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel60": {
"header": "24 tests cover line 60",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testDefaultConfig</li><li class=\"testPassed\">LoggerConfiguratorTest::testInvalidLoggerAddivity</li><li class=\"testPassed\">LoggerConfiguratorTest::testNonexistantFileFallback</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerConfiguratorTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppenderThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testLoggerThreshold</li><li class=\"testPassed\">LoggerTest::testLoggerExist</li><li class=\"testPassed\">LoggerTest::testCanGetRootLogger</li><li class=\"testPassed\">LoggerTest::testCanGetASpecificLogger</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerTest::testIsEnabledFor</li><li class=\"testPassed\">LoggerTest::testGetCurrentLoggers</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderFileTest::testRequiresLayout</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRender</li><li class=\"testPassed\">LoggerRendererMapTest::testFindAndRenderDescendants</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByObject</li><li class=\"testPassed\">LoggerRendererMapTest::testGetByClassName</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel63": {
"header": "12 tests cover line 63",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel64": {
"header": "12 tests cover line 64",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel65": {
"header": "12 tests cover line 65",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel66": {
"header": "12 tests cover line 66",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel67": {
"header": "12 tests cover line 67",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel68": {
"header": "12 tests cover line 68",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel70": {
"header": "12 tests cover line 70",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel71": {
"header": "2 tests cover line 71",
"body": "<ul><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li></ul>",
"footer": ""
},
"panel72": {
"header": "2 tests cover line 72",
"body": "<ul><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li></ul>",
"footer": ""
},
"panel73": {
"header": "12 tests cover line 73",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel74": {
"header": "12 tests cover line 74",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel75": {
"header": "12 tests cover line 75",
"body": "<ul><li class=\"testPassed\">LoggerAppenderTest::testThreshold</li><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerTest::testCanLogToAllLevels</li><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEcho</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testAcceptConfig</li><li class=\"testPassed\">LoggerFilterLevelMatchTest::testDenyConfig</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayout</li><li class=\"testPassed\">LoggerLayoutSerializedTest::testLayoutWithLocationInfo</li><li class=\"testPassed\">LoggerRendererMapTest::testUsage</li></ul>",
"footer": ""
},
"panel78": {
"header": "3 tests cover line 78",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li></ul>",
"footer": ""
},
"panel79": {
"header": "3 tests cover line 79",
"body": "<ul><li class=\"testPassed\">LoggerConfiguratorTest::testAppendersWithLayout</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li><li class=\"testPassed\">LoggerAppenderEchoTest::testEchoHtml</li></ul>",
"footer": ""
},
"panel82": {
"header": "2 tests cover line 82",
"body": "<ul><li class=\"testPassed\">LoggerAppenderEchoTest::testAppend</li><li class=\"testPassed\">LoggerAppenderEchoTest::testHtmlLineBreaks</li></ul>",
"footer": ""
},
"dummy": ""
};
YAHOO.phpunit.container.prepare = function (e) {
var elemId = $E.getTarget(e).id;
var line = elemId.substr(4);
var panelId = "panel" + line;
var containerId = "container" + line;
var panelData = YAHOO.phpunit.container.panelsData[panelId];
var panel = new YAHOO.widget.Panel(panelId, { visible:false, draggable:false, close:true } );
panel.setHeader(panelData["header"]);
panel.setBody(panelData["body"]);
panel.setFooter(panelData["footer"]);
panel.render(containerId);
$E.addListener(elemId, "click", panel.show, panel, true);
$E.removeListener(elemId, "mouseover");
};
function init() {
var ypc = YAHOO.phpunit.container;
for (var panelId in ypc.panelsData) {
var elemId = "line" + panelId.substr(5);
$E.addListener(elemId, "mouseover", ypc.prepare);
}
}
$E.addListener(window, "load", init);
//]]>
</script>
</body>
</html>