<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<title>RFATestCase xref</title>
<link type="text/css" rel="stylesheet" href="../../../stylesheet.css" />
</head>
<body>
<pre>

<a name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a name="2" href="#2">2</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em>
<a name="3" href="#3">3</a>   <em class="jxr_comment"> * contributor license agreements.  See the NOTICE file distributed with</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> * the License.  You may obtain a copy of the License at</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> *</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> *      <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a name="10" href="#10">10</a>  <em class="jxr_comment"> *</em>
<a name="11" href="#11">11</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> * See the License for the specific language governing permissions and</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> * limitations under the License.</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> */</em>
<a name="17" href="#17">17</a>  
<a name="18" href="#18">18</a>  <strong class="jxr_keyword">package</strong> org.apache.log4j;
<a name="19" href="#19">19</a>  
<a name="20" href="#20">20</a>  <strong class="jxr_keyword">import</strong> junit.framework.TestCase;
<a name="21" href="#21">21</a>  
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.io.File;
<a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.io.FileWriter;
<a name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> java.io.IOException;
<a name="25" href="#25">25</a>  
<a name="26" href="#26">26</a>  <em class="jxr_javadoccomment">/**</em>
<a name="27" href="#27">27</a>  <em class="jxr_javadoccomment"> *  Test of RollingFileAppender.</em>
<a name="28" href="#28">28</a>  <em class="jxr_javadoccomment"> *</em>
<a name="29" href="#29">29</a>  <em class="jxr_javadoccomment"> * @author Curt Arnold</em>
<a name="30" href="#30">30</a>  <em class="jxr_javadoccomment"> */</em>
<a name="31" href="#31">31</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../org/apache/log4j/RFATestCase.html">RFATestCase</a> <strong class="jxr_keyword">extends</strong> TestCase {
<a name="32" href="#32">32</a>  
<a name="33" href="#33">33</a>    <strong class="jxr_keyword">public</strong> <a href="../../../org/apache/log4j/RFATestCase.html">RFATestCase</a>(String name) {
<a name="34" href="#34">34</a>      <strong class="jxr_keyword">super</strong>(name);
<a name="35" href="#35">35</a>    }
<a name="36" href="#36">36</a>  
<a name="37" href="#37">37</a>    <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> tearDown() {
<a name="38" href="#38">38</a>        LogManager.resetConfiguration();
<a name="39" href="#39">39</a>    }
<a name="40" href="#40">40</a>  
<a name="41" href="#41">41</a>      <em class="jxr_javadoccomment">/**</em>
<a name="42" href="#42">42</a>  <em class="jxr_javadoccomment">     * Test basic rolling functionality using property file configuration.</em>
<a name="43" href="#43">43</a>  <em class="jxr_javadoccomment">     */</em>
<a name="44" href="#44">44</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> test1() <strong class="jxr_keyword">throws</strong> Exception {
<a name="45" href="#45">45</a>       Logger logger = Logger.getLogger(RFATestCase.<strong class="jxr_keyword">class</strong>);
<a name="46" href="#46">46</a>        PropertyConfigurator.configure(<span class="jxr_string">"input/RFA1.properties"</span>);
<a name="47" href="#47">47</a>  
<a name="48" href="#48">48</a>        <em class="jxr_comment">// Write exactly 10 bytes with each log</em>
<a name="49" href="#49">49</a>        <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; 25; i++) {
<a name="50" href="#50">50</a>          <strong class="jxr_keyword">if</strong> (i &lt; 10) {
<a name="51" href="#51">51</a>            logger.debug(<span class="jxr_string">"Hello---"</span> + i);
<a name="52" href="#52">52</a>          } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (i &lt; 100) {
<a name="53" href="#53">53</a>            logger.debug(<span class="jxr_string">"Hello--"</span> + i);
<a name="54" href="#54">54</a>          }
<a name="55" href="#55">55</a>        }
<a name="56" href="#56">56</a>  
<a name="57" href="#57">57</a>        assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test1.log"</span>).exists());
<a name="58" href="#58">58</a>        assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test1.log.1"</span>).exists());
<a name="59" href="#59">59</a>      }
<a name="60" href="#60">60</a>  
<a name="61" href="#61">61</a>      <em class="jxr_javadoccomment">/**</em>
<a name="62" href="#62">62</a>  <em class="jxr_javadoccomment">     * Test basic rolling functionality using API configuration.</em>
<a name="63" href="#63">63</a>  <em class="jxr_javadoccomment">     */</em>
<a name="64" href="#64">64</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> test2() <strong class="jxr_keyword">throws</strong> Exception {
<a name="65" href="#65">65</a>        Logger logger = Logger.getLogger(RFATestCase.<strong class="jxr_keyword">class</strong>);
<a name="66" href="#66">66</a>        Logger root = Logger.getRootLogger();
<a name="67" href="#67">67</a>        PatternLayout layout = <strong class="jxr_keyword">new</strong> PatternLayout(<span class="jxr_string">"%m\n"</span>);
<a name="68" href="#68">68</a>        org.apache.log4j.RollingFileAppender rfa =
<a name="69" href="#69">69</a>          <strong class="jxr_keyword">new</strong> org.apache.log4j.RollingFileAppender();
<a name="70" href="#70">70</a>        rfa.setName(<span class="jxr_string">"ROLLING"</span>);
<a name="71" href="#71">71</a>        rfa.setLayout(layout);
<a name="72" href="#72">72</a>        rfa.setAppend(false);
<a name="73" href="#73">73</a>        rfa.setMaxBackupIndex(3);
<a name="74" href="#74">74</a>        rfa.setMaximumFileSize(100);
<a name="75" href="#75">75</a>        rfa.setFile(<span class="jxr_string">"output/RFA-test2.log"</span>);
<a name="76" href="#76">76</a>        rfa.activateOptions();
<a name="77" href="#77">77</a>        root.addAppender(rfa);
<a name="78" href="#78">78</a>  
<a name="79" href="#79">79</a>        <em class="jxr_comment">// Write exactly 10 bytes with each log</em>
<a name="80" href="#80">80</a>        <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; 55; i++) {
<a name="81" href="#81">81</a>          <strong class="jxr_keyword">if</strong> (i &lt; 10) {
<a name="82" href="#82">82</a>            logger.debug(<span class="jxr_string">"Hello---"</span> + i);
<a name="83" href="#83">83</a>          } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (i &lt; 100) {
<a name="84" href="#84">84</a>            logger.debug(<span class="jxr_string">"Hello--"</span> + i);
<a name="85" href="#85">85</a>          }
<a name="86" href="#86">86</a>        }
<a name="87" href="#87">87</a>  
<a name="88" href="#88">88</a>        assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test2.log"</span>).exists());
<a name="89" href="#89">89</a>        assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test2.log.1"</span>).exists());
<a name="90" href="#90">90</a>        assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test2.log.2"</span>).exists());
<a name="91" href="#91">91</a>        assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test2.log.3"</span>).exists());
<a name="92" href="#92">92</a>        assertFalse(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-test2.log.4"</span>).exists());
<a name="93" href="#93">93</a>      }
<a name="94" href="#94">94</a>  
<a name="95" href="#95">95</a>      <em class="jxr_javadoccomment">/**</em>
<a name="96" href="#96">96</a>  <em class="jxr_javadoccomment">     * Tests 2 parameter constructor.</em>
<a name="97" href="#97">97</a>  <em class="jxr_javadoccomment">     * @throws IOException if IOException during test.</em>
<a name="98" href="#98">98</a>  <em class="jxr_javadoccomment">     */</em>
<a name="99" href="#99">99</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> test2ParamConstructor() <strong class="jxr_keyword">throws</strong> IOException {
<a name="100" href="#100">100</a>         SimpleLayout layout = <strong class="jxr_keyword">new</strong> SimpleLayout();
<a name="101" href="#101">101</a>         <a href="../../../org/apache/log4j/PropertyConfiguratorTest.html">RollingFileAppender</a> appender =
<a name="102" href="#102">102</a>                 <strong class="jxr_keyword">new</strong> <a href="../../../org/apache/log4j/PropertyConfiguratorTest.html">RollingFileAppender</a>(layout,<span class="jxr_string">"output/rfa_2param.log"</span>);
<a name="103" href="#103">103</a>         assertEquals(1, appender.getMaxBackupIndex());
<a name="104" href="#104">104</a>         assertEquals(10*1024*1024, appender.getMaximumFileSize());
<a name="105" href="#105">105</a>     }
<a name="106" href="#106">106</a>     <em class="jxr_javadoccomment">/**</em>
<a name="107" href="#107">107</a> <em class="jxr_javadoccomment">     * Tests 3 parameter constructor.</em>
<a name="108" href="#108">108</a> <em class="jxr_javadoccomment">     * @throws IOException if IOException during test.</em>
<a name="109" href="#109">109</a> <em class="jxr_javadoccomment">     */</em>
<a name="110" href="#110">110</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> test3ParamConstructor() <strong class="jxr_keyword">throws</strong> IOException {
<a name="111" href="#111">111</a>         SimpleLayout layout = <strong class="jxr_keyword">new</strong> SimpleLayout();
<a name="112" href="#112">112</a>         <a href="../../../org/apache/log4j/PropertyConfiguratorTest.html">RollingFileAppender</a> appender =
<a name="113" href="#113">113</a>                 <strong class="jxr_keyword">new</strong> <a href="../../../org/apache/log4j/PropertyConfiguratorTest.html">RollingFileAppender</a>(layout,<span class="jxr_string">"output/rfa_3param.log"</span>, false);
<a name="114" href="#114">114</a>         assertEquals(1, appender.getMaxBackupIndex());
<a name="115" href="#115">115</a>     }
<a name="116" href="#116">116</a> 
<a name="117" href="#117">117</a>     <em class="jxr_javadoccomment">/**</em>
<a name="118" href="#118">118</a> <em class="jxr_javadoccomment">     * Test locking of .1 file.</em>
<a name="119" href="#119">119</a> <em class="jxr_javadoccomment">     */</em>
<a name="120" href="#120">120</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testLockDotOne() <strong class="jxr_keyword">throws</strong> Exception {
<a name="121" href="#121">121</a>       Logger logger = Logger.getLogger(RFATestCase.<strong class="jxr_keyword">class</strong>);
<a name="122" href="#122">122</a>       Logger root = Logger.getRootLogger();
<a name="123" href="#123">123</a>       PatternLayout layout = <strong class="jxr_keyword">new</strong> PatternLayout(<span class="jxr_string">"%m\n"</span>);
<a name="124" href="#124">124</a>       org.apache.log4j.RollingFileAppender rfa =
<a name="125" href="#125">125</a>         <strong class="jxr_keyword">new</strong> org.apache.log4j.RollingFileAppender();
<a name="126" href="#126">126</a>       rfa.setName(<span class="jxr_string">"ROLLING"</span>);
<a name="127" href="#127">127</a>       rfa.setLayout(layout);
<a name="128" href="#128">128</a>       rfa.setAppend(false);
<a name="129" href="#129">129</a>       rfa.setMaxBackupIndex(10);
<a name="130" href="#130">130</a>       rfa.setMaximumFileSize(100);
<a name="131" href="#131">131</a>       rfa.setFile(<span class="jxr_string">"output/RFA-dot1.log"</span>);
<a name="132" href="#132">132</a>       rfa.activateOptions();
<a name="133" href="#133">133</a>       root.addAppender(rfa);
<a name="134" href="#134">134</a> 
<a name="135" href="#135">135</a>       <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.2"</span>).delete();
<a name="136" href="#136">136</a> 
<a name="137" href="#137">137</a>       FileWriter dot1 = <strong class="jxr_keyword">new</strong> FileWriter(<span class="jxr_string">"output/RFA-dot1.log.1"</span>);
<a name="138" href="#138">138</a>       dot1.write(<span class="jxr_string">"Locked file"</span>);
<a name="139" href="#139">139</a>       FileWriter dot5 = <strong class="jxr_keyword">new</strong> FileWriter(<span class="jxr_string">"output/RFA-dot1.log.5"</span>);
<a name="140" href="#140">140</a>       dot5.write(<span class="jxr_string">"Unlocked file"</span>);
<a name="141" href="#141">141</a>       dot5.close();
<a name="142" href="#142">142</a> 
<a name="143" href="#143">143</a>       <em class="jxr_comment">// Write exactly 10 bytes with each log</em>
<a name="144" href="#144">144</a>       <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; 15; i++) {
<a name="145" href="#145">145</a>         <strong class="jxr_keyword">if</strong> (i &lt; 10) {
<a name="146" href="#146">146</a>           logger.debug(<span class="jxr_string">"Hello---"</span> + i);
<a name="147" href="#147">147</a>         } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (i &lt; 100) {
<a name="148" href="#148">148</a>           logger.debug(<span class="jxr_string">"Hello--"</span> + i);
<a name="149" href="#149">149</a>         }
<a name="150" href="#150">150</a>       }
<a name="151" href="#151">151</a>       dot1.close();
<a name="152" href="#152">152</a> 
<a name="153" href="#153">153</a>       <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 15; i &lt; 25; i++) {
<a name="154" href="#154">154</a>             logger.debug(<span class="jxr_string">"Hello--"</span> + i);
<a name="155" href="#155">155</a>       }
<a name="156" href="#156">156</a>       rfa.close();
<a name="157" href="#157">157</a> 
<a name="158" href="#158">158</a> 
<a name="159" href="#159">159</a>       assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.7"</span>).exists());
<a name="160" href="#160">160</a>       <em class="jxr_comment">//</em>
<a name="161" href="#161">161</a>       <em class="jxr_comment">//     if .2 is the locked file then</em>
<a name="162" href="#162">162</a>       <em class="jxr_comment">//       renaming wasn't successful until the file was closed</em>
<a name="163" href="#163">163</a>       <strong class="jxr_keyword">if</strong> (<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.2"</span>).length() &lt; 15) {
<a name="164" href="#164">164</a>           assertEquals(50, <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log"</span>).length());
<a name="165" href="#165">165</a>           assertEquals(200, <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.1"</span>).length());
<a name="166" href="#166">166</a>       } <strong class="jxr_keyword">else</strong> {
<a name="167" href="#167">167</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log"</span>).exists());
<a name="168" href="#168">168</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.1"</span>).exists());
<a name="169" href="#169">169</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.2"</span>).exists());
<a name="170" href="#170">170</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.3"</span>).exists());
<a name="171" href="#171">171</a>           assertFalse(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot1.log.4"</span>).exists());
<a name="172" href="#172">172</a>       }
<a name="173" href="#173">173</a>     }
<a name="174" href="#174">174</a> 
<a name="175" href="#175">175</a> 
<a name="176" href="#176">176</a>     <em class="jxr_javadoccomment">/**</em>
<a name="177" href="#177">177</a> <em class="jxr_javadoccomment">     * Test locking of .3 file.</em>
<a name="178" href="#178">178</a> <em class="jxr_javadoccomment">     */</em>
<a name="179" href="#179">179</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testLockDotThree() <strong class="jxr_keyword">throws</strong> Exception {
<a name="180" href="#180">180</a>       Logger logger = Logger.getLogger(RFATestCase.<strong class="jxr_keyword">class</strong>);
<a name="181" href="#181">181</a>       Logger root = Logger.getRootLogger();
<a name="182" href="#182">182</a>       PatternLayout layout = <strong class="jxr_keyword">new</strong> PatternLayout(<span class="jxr_string">"%m\n"</span>);
<a name="183" href="#183">183</a>       org.apache.log4j.RollingFileAppender rfa =
<a name="184" href="#184">184</a>         <strong class="jxr_keyword">new</strong> org.apache.log4j.RollingFileAppender();
<a name="185" href="#185">185</a>       rfa.setName(<span class="jxr_string">"ROLLING"</span>);
<a name="186" href="#186">186</a>       rfa.setLayout(layout);
<a name="187" href="#187">187</a>       rfa.setAppend(false);
<a name="188" href="#188">188</a>       rfa.setMaxBackupIndex(10);
<a name="189" href="#189">189</a>       rfa.setMaximumFileSize(100);
<a name="190" href="#190">190</a>       rfa.setFile(<span class="jxr_string">"output/RFA-dot3.log"</span>);
<a name="191" href="#191">191</a>       rfa.activateOptions();
<a name="192" href="#192">192</a>       root.addAppender(rfa);
<a name="193" href="#193">193</a> 
<a name="194" href="#194">194</a>       <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.1"</span>).delete();
<a name="195" href="#195">195</a>       <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.2"</span>).delete();
<a name="196" href="#196">196</a>       <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.4"</span>).delete();
<a name="197" href="#197">197</a> 
<a name="198" href="#198">198</a>       FileWriter dot3 = <strong class="jxr_keyword">new</strong> FileWriter(<span class="jxr_string">"output/RFA-dot3.log.3"</span>);
<a name="199" href="#199">199</a>       dot3.write(<span class="jxr_string">"Locked file"</span>);
<a name="200" href="#200">200</a>       FileWriter dot5 = <strong class="jxr_keyword">new</strong> FileWriter(<span class="jxr_string">"output/RFA-dot3.log.5"</span>);
<a name="201" href="#201">201</a>       dot5.write(<span class="jxr_string">"Unlocked file"</span>);
<a name="202" href="#202">202</a>       dot5.close();
<a name="203" href="#203">203</a> 
<a name="204" href="#204">204</a>       <em class="jxr_comment">// Write exactly 10 bytes with each log</em>
<a name="205" href="#205">205</a>       <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; 15; i++) {
<a name="206" href="#206">206</a>         <strong class="jxr_keyword">if</strong> (i &lt; 10) {
<a name="207" href="#207">207</a>           logger.debug(<span class="jxr_string">"Hello---"</span> + i);
<a name="208" href="#208">208</a>         } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (i &lt; 100) {
<a name="209" href="#209">209</a>           logger.debug(<span class="jxr_string">"Hello--"</span> + i);
<a name="210" href="#210">210</a>         }
<a name="211" href="#211">211</a>       }
<a name="212" href="#212">212</a>       dot3.close();
<a name="213" href="#213">213</a> 
<a name="214" href="#214">214</a>       <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 15; i &lt; 35; i++) {
<a name="215" href="#215">215</a>           logger.debug(<span class="jxr_string">"Hello--"</span> + i);
<a name="216" href="#216">216</a>       }
<a name="217" href="#217">217</a>       rfa.close();
<a name="218" href="#218">218</a> 
<a name="219" href="#219">219</a>       assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.8"</span>).exists());
<a name="220" href="#220">220</a>       <em class="jxr_comment">//</em>
<a name="221" href="#221">221</a>       <em class="jxr_comment">//     if .3 is the locked file then</em>
<a name="222" href="#222">222</a>       <em class="jxr_comment">//       renaming wasn't successful until file was closed</em>
<a name="223" href="#223">223</a>       <strong class="jxr_keyword">if</strong> (<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.5"</span>).exists()) {
<a name="224" href="#224">224</a>           assertEquals(50, <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log"</span>).length());
<a name="225" href="#225">225</a>           assertEquals(100, <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.1"</span>).length());
<a name="226" href="#226">226</a>           assertEquals(200, <strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.2"</span>).length());
<a name="227" href="#227">227</a>       } <strong class="jxr_keyword">else</strong> {
<a name="228" href="#228">228</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log"</span>).exists());
<a name="229" href="#229">229</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.1"</span>).exists());
<a name="230" href="#230">230</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.2"</span>).exists());
<a name="231" href="#231">231</a>           assertTrue(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.3"</span>).exists());
<a name="232" href="#232">232</a>           assertFalse(<strong class="jxr_keyword">new</strong> File(<span class="jxr_string">"output/RFA-dot3.log.4"</span>).exists());
<a name="233" href="#233">233</a>       }
<a name="234" href="#234">234</a>     }
<a name="235" href="#235">235</a> 
<a name="236" href="#236">236</a> 
<a name="237" href="#237">237</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

