/* automatically generated by JSCoverage - do not edit */
try {
  if (typeof top === 'object' && top !== null && typeof top.opener === 'object' && top.opener !== null) {
    // this is a browser window that was opened from another window

    if (! top.opener._$jscoverage) {
      top.opener._$jscoverage = {};
    }
  }
}
catch (e) {}

try {
  if (typeof top === 'object' && top !== null) {
    // this is a browser window

    try {
      if (typeof top.opener === 'object' && top.opener !== null && top.opener._$jscoverage) {
        top._$jscoverage = top.opener._$jscoverage;
      }
    }
    catch (e) {}

    if (! top._$jscoverage) {
      top._$jscoverage = {};
    }
  }
}
catch (e) {}

try {
  if (typeof top === 'object' && top !== null && top._$jscoverage) {
    this._$jscoverage = top._$jscoverage;
  }
}
catch (e) {}
if (! this._$jscoverage) {
  this._$jscoverage = {};
}
if (! _$jscoverage['app/ModernUiManager.js']) {
  _$jscoverage['app/ModernUiManager.js'] = [];
  _$jscoverage['app/ModernUiManager.js'][1] = 0;
  _$jscoverage['app/ModernUiManager.js'][2] = 0;
  _$jscoverage['app/ModernUiManager.js'][3] = 0;
  _$jscoverage['app/ModernUiManager.js'][4] = 0;
  _$jscoverage['app/ModernUiManager.js'][8] = 0;
  _$jscoverage['app/ModernUiManager.js'][9] = 0;
  _$jscoverage['app/ModernUiManager.js'][11] = 0;
  _$jscoverage['app/ModernUiManager.js'][12] = 0;
  _$jscoverage['app/ModernUiManager.js'][15] = 0;
  _$jscoverage['app/ModernUiManager.js'][17] = 0;
  _$jscoverage['app/ModernUiManager.js'][18] = 0;
  _$jscoverage['app/ModernUiManager.js'][19] = 0;
  _$jscoverage['app/ModernUiManager.js'][21] = 0;
  _$jscoverage['app/ModernUiManager.js'][23] = 0;
  _$jscoverage['app/ModernUiManager.js'][24] = 0;
  _$jscoverage['app/ModernUiManager.js'][25] = 0;
  _$jscoverage['app/ModernUiManager.js'][26] = 0;
  _$jscoverage['app/ModernUiManager.js'][27] = 0;
  _$jscoverage['app/ModernUiManager.js'][29] = 0;
  _$jscoverage['app/ModernUiManager.js'][32] = 0;
  _$jscoverage['app/ModernUiManager.js'][33] = 0;
  _$jscoverage['app/ModernUiManager.js'][34] = 0;
  _$jscoverage['app/ModernUiManager.js'][35] = 0;
  _$jscoverage['app/ModernUiManager.js'][37] = 0;
  _$jscoverage['app/ModernUiManager.js'][38] = 0;
  _$jscoverage['app/ModernUiManager.js'][40] = 0;
  _$jscoverage['app/ModernUiManager.js'][43] = 0;
  _$jscoverage['app/ModernUiManager.js'][44] = 0;
  _$jscoverage['app/ModernUiManager.js'][47] = 0;
  _$jscoverage['app/ModernUiManager.js'][48] = 0;
  _$jscoverage['app/ModernUiManager.js'][51] = 0;
  _$jscoverage['app/ModernUiManager.js'][52] = 0;
  _$jscoverage['app/ModernUiManager.js'][55] = 0;
  _$jscoverage['app/ModernUiManager.js'][56] = 0;
  _$jscoverage['app/ModernUiManager.js'][57] = 0;
  _$jscoverage['app/ModernUiManager.js'][60] = 0;
  _$jscoverage['app/ModernUiManager.js'][63] = 0;
  _$jscoverage['app/ModernUiManager.js'][66] = 0;
  _$jscoverage['app/ModernUiManager.js'][69] = 0;
  _$jscoverage['app/ModernUiManager.js'][72] = 0;
  _$jscoverage['app/ModernUiManager.js'][73] = 0;
  _$jscoverage['app/ModernUiManager.js'][74] = 0;
  _$jscoverage['app/ModernUiManager.js'][76] = 0;
  _$jscoverage['app/ModernUiManager.js'][79] = 0;
  _$jscoverage['app/ModernUiManager.js'][80] = 0;
  _$jscoverage['app/ModernUiManager.js'][81] = 0;
  _$jscoverage['app/ModernUiManager.js'][83] = 0;
  _$jscoverage['app/ModernUiManager.js'][86] = 0;
  _$jscoverage['app/ModernUiManager.js'][87] = 0;
  _$jscoverage['app/ModernUiManager.js'][88] = 0;
  _$jscoverage['app/ModernUiManager.js'][92] = 0;
  _$jscoverage['app/ModernUiManager.js'][94] = 0;
  _$jscoverage['app/ModernUiManager.js'][95] = 0;
  _$jscoverage['app/ModernUiManager.js'][96] = 0;
  _$jscoverage['app/ModernUiManager.js'][98] = 0;
  _$jscoverage['app/ModernUiManager.js'][99] = 0;
  _$jscoverage['app/ModernUiManager.js'][100] = 0;
  _$jscoverage['app/ModernUiManager.js'][104] = 0;
  _$jscoverage['app/ModernUiManager.js'][108] = 0;
  _$jscoverage['app/ModernUiManager.js'][112] = 0;
  _$jscoverage['app/ModernUiManager.js'][116] = 0;
  _$jscoverage['app/ModernUiManager.js'][117] = 0;
  _$jscoverage['app/ModernUiManager.js'][119] = 0;
  _$jscoverage['app/ModernUiManager.js'][120] = 0;
  _$jscoverage['app/ModernUiManager.js'][122] = 0;
  _$jscoverage['app/ModernUiManager.js'][126] = 0;
  _$jscoverage['app/ModernUiManager.js'][128] = 0;
  _$jscoverage['app/ModernUiManager.js'][129] = 0;
  _$jscoverage['app/ModernUiManager.js'][130] = 0;
  _$jscoverage['app/ModernUiManager.js'][131] = 0;
  _$jscoverage['app/ModernUiManager.js'][132] = 0;
  _$jscoverage['app/ModernUiManager.js'][133] = 0;
  _$jscoverage['app/ModernUiManager.js'][134] = 0;
  _$jscoverage['app/ModernUiManager.js'][135] = 0;
  _$jscoverage['app/ModernUiManager.js'][136] = 0;
  _$jscoverage['app/ModernUiManager.js'][141] = 0;
  _$jscoverage['app/ModernUiManager.js'][142] = 0;
  _$jscoverage['app/ModernUiManager.js'][146] = 0;
  _$jscoverage['app/ModernUiManager.js'][150] = 0;
  _$jscoverage['app/ModernUiManager.js'][154] = 0;
  _$jscoverage['app/ModernUiManager.js'][155] = 0;
  _$jscoverage['app/ModernUiManager.js'][156] = 0;
  _$jscoverage['app/ModernUiManager.js'][157] = 0;
  _$jscoverage['app/ModernUiManager.js'][159] = 0;
  _$jscoverage['app/ModernUiManager.js'][160] = 0;
  _$jscoverage['app/ModernUiManager.js'][162] = 0;
  _$jscoverage['app/ModernUiManager.js'][168] = 0;
  _$jscoverage['app/ModernUiManager.js'][169] = 0;
  _$jscoverage['app/ModernUiManager.js'][171] = 0;
  _$jscoverage['app/ModernUiManager.js'][173] = 0;
  _$jscoverage['app/ModernUiManager.js'][174] = 0;
  _$jscoverage['app/ModernUiManager.js'][176] = 0;
  _$jscoverage['app/ModernUiManager.js'][177] = 0;
  _$jscoverage['app/ModernUiManager.js'][181] = 0;
  _$jscoverage['app/ModernUiManager.js'][182] = 0;
  _$jscoverage['app/ModernUiManager.js'][183] = 0;
  _$jscoverage['app/ModernUiManager.js'][184] = 0;
  _$jscoverage['app/ModernUiManager.js'][185] = 0;
  _$jscoverage['app/ModernUiManager.js'][188] = 0;
  _$jscoverage['app/ModernUiManager.js'][189] = 0;
  _$jscoverage['app/ModernUiManager.js'][193] = 0;
  _$jscoverage['app/ModernUiManager.js'][198] = 0;
  _$jscoverage['app/ModernUiManager.js'][199] = 0;
  _$jscoverage['app/ModernUiManager.js'][200] = 0;
  _$jscoverage['app/ModernUiManager.js'][201] = 0;
  _$jscoverage['app/ModernUiManager.js'][203] = 0;
  _$jscoverage['app/ModernUiManager.js'][204] = 0;
  _$jscoverage['app/ModernUiManager.js'][207] = 0;
  _$jscoverage['app/ModernUiManager.js'][208] = 0;
  _$jscoverage['app/ModernUiManager.js'][209] = 0;
  _$jscoverage['app/ModernUiManager.js'][211] = 0;
  _$jscoverage['app/ModernUiManager.js'][214] = 0;
  _$jscoverage['app/ModernUiManager.js'][215] = 0;
  _$jscoverage['app/ModernUiManager.js'][216] = 0;
  _$jscoverage['app/ModernUiManager.js'][217] = 0;
  _$jscoverage['app/ModernUiManager.js'][218] = 0;
  _$jscoverage['app/ModernUiManager.js'][219] = 0;
  _$jscoverage['app/ModernUiManager.js'][220] = 0;
  _$jscoverage['app/ModernUiManager.js'][222] = 0;
  _$jscoverage['app/ModernUiManager.js'][225] = 0;
  _$jscoverage['app/ModernUiManager.js'][226] = 0;
  _$jscoverage['app/ModernUiManager.js'][227] = 0;
  _$jscoverage['app/ModernUiManager.js'][231] = 0;
  _$jscoverage['app/ModernUiManager.js'][233] = 0;
  _$jscoverage['app/ModernUiManager.js'][234] = 0;
  _$jscoverage['app/ModernUiManager.js'][235] = 0;
  _$jscoverage['app/ModernUiManager.js'][238] = 0;
  _$jscoverage['app/ModernUiManager.js'][239] = 0;
  _$jscoverage['app/ModernUiManager.js'][240] = 0;
  _$jscoverage['app/ModernUiManager.js'][241] = 0;
  _$jscoverage['app/ModernUiManager.js'][243] = 0;
  _$jscoverage['app/ModernUiManager.js'][244] = 0;
  _$jscoverage['app/ModernUiManager.js'][248] = 0;
  _$jscoverage['app/ModernUiManager.js'][249] = 0;
  _$jscoverage['app/ModernUiManager.js'][250] = 0;
  _$jscoverage['app/ModernUiManager.js'][254] = 0;
  _$jscoverage['app/ModernUiManager.js'][255] = 0;
  _$jscoverage['app/ModernUiManager.js'][256] = 0;
  _$jscoverage['app/ModernUiManager.js'][257] = 0;
  _$jscoverage['app/ModernUiManager.js'][258] = 0;
  _$jscoverage['app/ModernUiManager.js'][262] = 0;
  _$jscoverage['app/ModernUiManager.js'][263] = 0;
  _$jscoverage['app/ModernUiManager.js'][267] = 0;
  _$jscoverage['app/ModernUiManager.js'][268] = 0;
  _$jscoverage['app/ModernUiManager.js'][275] = 0;
}
_$jscoverage['app/ModernUiManager.js'].source = ["Function<span class=\"k\">.</span>prototype<span class=\"k\">.</span>bind <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","    <span class=\"k\">var</span> __method <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">,</span> args <span class=\"k\">=</span> Array<span class=\"k\">.</span>prototype<span class=\"k\">.</span>slice<span class=\"k\">.</span>call<span class=\"k\">(</span>arguments<span class=\"k\">,</span> <span class=\"s\">1</span><span class=\"k\">),</span> object <span class=\"k\">=</span> arguments<span class=\"k\">[</span><span class=\"s\">0</span><span class=\"k\">];</span>","    <span class=\"k\">return</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","      <span class=\"k\">return</span> __method<span class=\"k\">.</span>apply<span class=\"k\">(</span>object<span class=\"k\">,</span> args<span class=\"k\">.</span>concat<span class=\"k\">(</span>Array<span class=\"k\">.</span>prototype<span class=\"k\">.</span>slice<span class=\"k\">.</span>call<span class=\"k\">(</span>arguments<span class=\"k\">)));</span>","    <span class=\"k\">}</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">(</span>testManager<span class=\"k\">)</span> <span class=\"k\">{</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testManager <span class=\"k\">=</span> testManager<span class=\"k\">;</span>","","    <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdated <span class=\"k\">=</span> <span class=\"k\">[];</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdatedClearTime <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>Util<span class=\"k\">.</span>inherit<span class=\"k\">(</span>JsUnit<span class=\"k\">.</span>BaseUiManager<span class=\"k\">,</span> JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">);</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>onLoad <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">(</span>uiWindow<span class=\"k\">)</span> <span class=\"k\">{</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_uiWindow <span class=\"k\">=</span> uiWindow<span class=\"k\">;</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc <span class=\"k\">=</span> uiWindow<span class=\"k\">.</span>document<span class=\"k\">;</span>","","    <span class=\"k\">this</span><span class=\"k\">.</span>_testFileInput <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"testFileInput\"</span><span class=\"k\">);</span>","","    <span class=\"k\">this</span><span class=\"k\">.</span>_statusTextNode <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_findTextNode<span class=\"k\">(</span><span class=\"s\">\"status\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_runCountTextNode <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_findTextNode<span class=\"k\">(</span><span class=\"s\">\"runCount\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_errorCountTextNode <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_findTextNode<span class=\"k\">(</span><span class=\"s\">\"errorCount\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_failureCountTextNode <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_findTextNode<span class=\"k\">(</span><span class=\"s\">\"failureCount\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_elapsedTimeTextNode <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_findTextNode<span class=\"k\">(</span><span class=\"s\">\"elapsedTime\"</span><span class=\"k\">);</span>","","    <span class=\"k\">this</span><span class=\"k\">.</span>_progressBar <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"progress\"</span><span class=\"k\">);</span>","","    <span class=\"c\">// tests info area</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoDiv <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"testsInfo\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCompleteDiv <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"testsInfoComplete\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCurrentSuiteDiv <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"testsInfoCurrentSuite\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCurrentTestTextNode <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_findTextNode<span class=\"k\">(</span><span class=\"s\">\"testsInfoCurrentTest\"</span><span class=\"k\">);</span>","","    <span class=\"k\">this</span><span class=\"k\">.</span>_testResultTestDiv <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"testResultTest\"</span><span class=\"k\">);</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testResultDetailsDiv <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span><span class=\"s\">\"testResultDetails\"</span><span class=\"k\">);</span>","","    <span class=\"k\">this</span><span class=\"k\">.</span>showPassed<span class=\"k\">(</span><span class=\"k\">false</span><span class=\"k\">);</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>getUiFrameUrl <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","    <span class=\"k\">return</span> <span class=\"s\">'./app/modernUi.html'</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>getTestFileName <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","    <span class=\"k\">return</span> <span class=\"k\">this</span><span class=\"k\">.</span>_testFileInput<span class=\"k\">.</span>value<span class=\"k\">;</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>getTraceLevel <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","    <span class=\"k\">return</span> JsUnitTraceLevel<span class=\"k\">.</span>NONE<span class=\"k\">;</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>starting <span class=\"k\">=</span> <span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCompleteDiv<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> <span class=\"s\">''</span><span class=\"k\">;</span>","    <span class=\"k\">this</span><span class=\"k\">.</span>_testResultDetailsDiv<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> <span class=\"s\">''</span><span class=\"k\">;</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>submittingResults <span class=\"k\">=</span> <span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>showMessageForSelectedProblemTest <span class=\"k\">=</span> <span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>showMessagesForAllProblemTests <span class=\"k\">=</span> <span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>showLog <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>fatalError <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">(</span>aMessage<span class=\"k\">)</span> <span class=\"k\">{</span>","    <span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_testManager<span class=\"k\">.</span>_params<span class=\"k\">.</span>shouldSuppressDialogs<span class=\"k\">())</span> <span class=\"c\">// todo: huh?</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>setStatus<span class=\"k\">(</span>aMessage<span class=\"k\">);</span>","    <span class=\"k\">else</span>","        alert<span class=\"k\">(</span>aMessage<span class=\"k\">);</span>","<span class=\"k\">}</span>","","JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">.</span>userConfirm <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">(</span>aMessage<span class=\"k\">)</span> <span class=\"k\">{</span>","    <span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_testManager<span class=\"k\">.</span>_params<span class=\"k\">.</span>shouldSuppressDialogs<span class=\"k\">())</span> <span class=\"c\">// todo: huh?</span>","        <span class=\"k\">return</span> <span class=\"k\">false</span><span class=\"k\">;</span>","    <span class=\"k\">else</span>","        <span class=\"k\">return</span> confirm<span class=\"k\">(</span>aMessage<span class=\"k\">);</span>","<span class=\"k\">}</span>","","Object<span class=\"k\">.</span>extend <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">(</span>obj<span class=\"k\">,</span> extendWith<span class=\"k\">)</span> <span class=\"k\">{</span>","    <span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> name <span class=\"k\">in</span> extendWith<span class=\"k\">)</span> <span class=\"k\">{</span>","        obj<span class=\"k\">[</span>name<span class=\"k\">]</span> <span class=\"k\">=</span> extendWith<span class=\"k\">[</span>name<span class=\"k\">];</span>","    <span class=\"k\">}</span>","<span class=\"k\">}</span>","","Object<span class=\"k\">.</span>extend<span class=\"k\">(</span>JsUnit<span class=\"k\">.</span>ModernUiManager<span class=\"k\">.</span>prototype<span class=\"k\">,</span> <span class=\"k\">{</span>","    _findTextNode<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>id<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> element <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>getElementById<span class=\"k\">(</span>id<span class=\"k\">);</span>","        <span class=\"k\">if</span> <span class=\"k\">(</span>element<span class=\"k\">.</span>childNodes<span class=\"k\">.</span>length <span class=\"k\">==</span> <span class=\"s\">1</span><span class=\"k\">)</span> <span class=\"k\">{</span>","            <span class=\"k\">return</span> element<span class=\"k\">.</span>childNodes<span class=\"k\">[</span><span class=\"s\">0</span><span class=\"k\">];</span>","        <span class=\"k\">}</span>","        <span class=\"k\">var</span> node <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>createTextNode<span class=\"k\">(</span><span class=\"s\">\"\"</span><span class=\"k\">);</span>","        element<span class=\"k\">.</span>appendChild<span class=\"k\">(</span>node<span class=\"k\">);</span>","        <span class=\"k\">return</span> node<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _setSpanText<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>span<span class=\"k\">,</span> text<span class=\"k\">)</span> <span class=\"k\">{</span>","        span<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> text<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _setTextNode<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>textNode<span class=\"k\">,</span> text<span class=\"k\">)</span> <span class=\"k\">{</span>","        textNode<span class=\"k\">.</span>data <span class=\"k\">=</span> text<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    setStatus<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>str<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_setTextNode<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_statusTextNode<span class=\"k\">,</span> str<span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _addRecentlyUpdated<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>element<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> cssClasses <span class=\"k\">=</span> element<span class=\"k\">.</span>getAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">);</span>","        <span class=\"k\">if</span> <span class=\"k\">(</span>cssClasses<span class=\"k\">.</span>indexOf<span class=\"k\">(</span><span class=\"s\">\" recentlyUpdated\"</span><span class=\"k\">)</span> <span class=\"k\">&gt;</span> <span class=\"k\">-</span><span class=\"s\">1</span><span class=\"k\">)</span> <span class=\"k\">return</span><span class=\"k\">;</span>","","        element<span class=\"k\">.</span>setAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">,</span> cssClasses <span class=\"k\">+</span> <span class=\"s\">\" recentlyUpdated\"</span><span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdated<span class=\"k\">.</span>push<span class=\"k\">(</span>element<span class=\"k\">);</span>","","        <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoDiv<span class=\"k\">.</span>scrollTop <span class=\"k\">=</span> element<span class=\"k\">.</span>offsetTop <span class=\"k\">-</span> <span class=\"s\">30</span><span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _clearRecentlyUpdated<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>clearAll<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">if</span> <span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdated<span class=\"k\">.</span>length <span class=\"k\">==</span> <span class=\"s\">0</span><span class=\"k\">)</span> <span class=\"k\">return</span><span class=\"k\">;</span>","","        <span class=\"k\">var</span> time <span class=\"k\">=</span> <span class=\"k\">new</span> Date<span class=\"k\">().</span>getTime<span class=\"k\">();</span>","        <span class=\"k\">if</span> <span class=\"k\">(!</span>clearAll <span class=\"k\">&amp;&amp;</span> time <span class=\"k\">&lt;</span> <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdatedClearTime <span class=\"k\">+</span> <span class=\"s\">250</span><span class=\"k\">)</span> <span class=\"k\">return</span><span class=\"k\">;</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdatedClearTime <span class=\"k\">=</span> time<span class=\"k\">;</span>","        <span class=\"k\">var</span> lastToClear <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdated<span class=\"k\">.</span>length<span class=\"k\">;</span>","        <span class=\"k\">if</span> <span class=\"k\">(!</span>clearAll<span class=\"k\">)</span> lastToClear<span class=\"k\">--;</span>","        <span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> i <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span> i <span class=\"k\">&lt;</span> lastToClear<span class=\"k\">;</span> i<span class=\"k\">++)</span> <span class=\"k\">{</span>","            <span class=\"k\">var</span> element <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_recentlyUpdated<span class=\"k\">[</span>i<span class=\"k\">];</span>","            <span class=\"k\">var</span> cssClasses <span class=\"k\">=</span> element<span class=\"k\">.</span>getAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">).</span>replace<span class=\"k\">(</span><span class=\"s\">\" recentlyUpdated\"</span><span class=\"k\">,</span> <span class=\"s\">\"\"</span><span class=\"k\">);</span>","            element<span class=\"k\">.</span>setAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">,</span> cssClasses<span class=\"k\">);</span>","        <span class=\"k\">}</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    finishing<span class=\"k\">:</span> <span class=\"k\">function</span> <span class=\"k\">()</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_clearRecentlyUpdated<span class=\"k\">(</span><span class=\"k\">true</span><span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_setTextNode<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCurrentTestTextNode<span class=\"k\">,</span> <span class=\"s\">\"\"</span><span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _setProgressBarImage<span class=\"k\">:</span> <span class=\"k\">function</span> <span class=\"k\">(</span>imgName<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_progressBar<span class=\"k\">.</span>src <span class=\"k\">=</span> imgName<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _setProgressBarWidth<span class=\"k\">:</span> <span class=\"k\">function</span> <span class=\"k\">(</span>w<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_progressBar<span class=\"k\">.</span>width <span class=\"k\">=</span> w<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    updateProgressIndicators<span class=\"k\">:</span> <span class=\"k\">function</span> <span class=\"k\">(</span>totalCount<span class=\"k\">,</span> errorCount<span class=\"k\">,</span> failureCount<span class=\"k\">,</span> progressBarProportion<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_setTextNode<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_runCountTextNode<span class=\"k\">,</span> totalCount<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_setTextNode<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_errorCountTextNode<span class=\"k\">,</span> errorCount<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_setTextNode<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_failureCountTextNode<span class=\"k\">,</span>  failureCount<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_setProgressBarWidth<span class=\"k\">(</span><span class=\"s\">300</span> <span class=\"k\">*</span> progressBarProportion<span class=\"k\">);</span>","","        <span class=\"k\">if</span> <span class=\"k\">(</span>errorCount <span class=\"k\">&gt;</span> <span class=\"s\">0</span> <span class=\"k\">||</span> failureCount <span class=\"k\">&gt;</span> <span class=\"s\">0</span><span class=\"k\">)</span>","            <span class=\"k\">this</span><span class=\"k\">.</span>_setProgressBarImage<span class=\"k\">(</span><span class=\"s\">'../images/red.gif'</span><span class=\"k\">);</span>","        <span class=\"k\">else</span>","            <span class=\"k\">this</span><span class=\"k\">.</span>_setProgressBarImage<span class=\"k\">(</span><span class=\"s\">'../images/green.gif'</span><span class=\"k\">);</span>","","<span class=\"c\">//        this._setTextNode(this._elapsedTimeTextNode, this.elapsedTime());</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    learnedOfTestPage<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>testPage<span class=\"k\">)</span> <span class=\"k\">{</span>","        testPage<span class=\"k\">.</span>headerElement <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>createElement<span class=\"k\">(</span><span class=\"s\">\"li\"</span><span class=\"k\">);</span>","        testPage<span class=\"k\">.</span>headerElement<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> testPage<span class=\"k\">.</span>url<span class=\"k\">;</span>","","        testPage<span class=\"k\">.</span>testListElement <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>createElement<span class=\"k\">(</span><span class=\"s\">\"ul\"</span><span class=\"k\">);</span>","","        <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCompleteDiv<span class=\"k\">.</span>appendChild<span class=\"k\">(</span>testPage<span class=\"k\">.</span>headerElement<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCompleteDiv<span class=\"k\">.</span>appendChild<span class=\"k\">(</span>testPage<span class=\"k\">.</span>testListElement<span class=\"k\">);</span>","","        <span class=\"k\">this</span><span class=\"k\">.</span>_testPageUpdate<span class=\"k\">(</span>testPage<span class=\"k\">,</span> JsUnit<span class=\"k\">.</span>TestPage<span class=\"k\">.</span>STATUS_CHANGE_EVENT<span class=\"k\">);</span>","        testPage<span class=\"k\">.</span>listen<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>_testPageUpdate<span class=\"k\">.</span>bind<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">));</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _testPageUpdate<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>testPage<span class=\"k\">,</span> event<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">if</span> <span class=\"k\">(</span>event <span class=\"k\">==</span> JsUnit<span class=\"k\">.</span>TestPage<span class=\"k\">.</span>READY_EVENT<span class=\"k\">)</span> <span class=\"k\">{</span>","            <span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> i <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span> i <span class=\"k\">&lt;</span> testPage<span class=\"k\">.</span>tests<span class=\"k\">.</span>length<span class=\"k\">;</span> i<span class=\"k\">++)</span> <span class=\"k\">{</span>","                <span class=\"k\">var</span> theTest <span class=\"k\">=</span> testPage<span class=\"k\">.</span>tests<span class=\"k\">[</span>i<span class=\"k\">];</span>","                theTest<span class=\"k\">.</span>listen<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">.</span>testCompleted<span class=\"k\">.</span>bind<span class=\"k\">(</span><span class=\"k\">this</span><span class=\"k\">));</span>","                <span class=\"k\">this</span><span class=\"k\">.</span>_displayTestResult<span class=\"k\">(</span>theTest<span class=\"k\">);</span>","            <span class=\"k\">}</span>","        <span class=\"k\">}</span>","        testPage<span class=\"k\">.</span>headerElement<span class=\"k\">.</span>setAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">,</span> <span class=\"s\">\"testPage \"</span> <span class=\"k\">+</span> testPage<span class=\"k\">.</span>getStatus<span class=\"k\">());</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_addRecentlyUpdated<span class=\"k\">(</span>testPage<span class=\"k\">.</span>headerElement<span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    testCompleted<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>test<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_updateTestResultStatus<span class=\"k\">(</span>test<span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","","    _showDetails<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>theTest<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> div <span class=\"k\">=</span> theTest<span class=\"k\">.</span>div<span class=\"k\">;</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_testResultTestDiv<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> theTest<span class=\"k\">.</span>testPage<span class=\"k\">.</span>url <span class=\"k\">+</span> <span class=\"s\">\".\"</span> <span class=\"k\">+</span> theTest<span class=\"k\">.</span>testName<span class=\"k\">;</span>","        <span class=\"k\">var</span> text<span class=\"k\">;</span>","        <span class=\"k\">switch</span> <span class=\"k\">(</span>theTest<span class=\"k\">.</span>status<span class=\"k\">)</span> <span class=\"k\">{</span>","            <span class=\"k\">case</span> <span class=\"s\">'success'</span><span class=\"k\">:</span>","                text <span class=\"k\">=</span> <span class=\"s\">\"Test succeeded!\"</span><span class=\"k\">;</span>","                <span class=\"k\">break</span><span class=\"k\">;</span>","            <span class=\"k\">case</span> <span class=\"s\">'failure'</span><span class=\"k\">:</span>","            <span class=\"k\">case</span> <span class=\"s\">'error'</span><span class=\"k\">:</span>","                text <span class=\"k\">=</span> theTest<span class=\"k\">.</span>message <span class=\"k\">+</span> <span class=\"s\">\":</span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">;</span>","                text <span class=\"k\">+=</span> <span class=\"k\">this</span><span class=\"k\">.</span>problemDetailMessageFor<span class=\"k\">(</span>theTest<span class=\"k\">.</span>exception<span class=\"k\">);</span>","                <span class=\"k\">break</span><span class=\"k\">;</span>","            <span class=\"k\">default</span><span class=\"k\">:</span>","                <span class=\"k\">throw</span> <span class=\"k\">new</span> Error<span class=\"k\">(</span><span class=\"s\">\"unknown status '\"</span> <span class=\"k\">+</span> theTest<span class=\"k\">.</span>status <span class=\"k\">+</span> <span class=\"s\">\"'\"</span><span class=\"k\">);</span>","        <span class=\"k\">}</span>","","        <span class=\"k\">var</span> traceMessages <span class=\"k\">=</span> theTest<span class=\"k\">.</span>traceMessages<span class=\"k\">;</span>","        <span class=\"k\">if</span> <span class=\"k\">(</span>traceMessages<span class=\"k\">.</span>length <span class=\"k\">&gt;</span> <span class=\"s\">0</span><span class=\"k\">)</span> <span class=\"k\">{</span>","            text <span class=\"k\">+=</span> <span class=\"s\">\"&lt;blockquote&gt;\"</span><span class=\"k\">;</span>","            <span class=\"k\">for</span> <span class=\"k\">(</span><span class=\"k\">var</span> i <span class=\"k\">=</span> <span class=\"s\">0</span><span class=\"k\">;</span> i <span class=\"k\">&lt;</span> traceMessages<span class=\"k\">.</span>length<span class=\"k\">;</span> i<span class=\"k\">++)</span> <span class=\"k\">{</span>","                text <span class=\"k\">+=</span> <span class=\"s\">\"&lt;span style=</span><span class=\"t\">\\\"</span><span class=\"s\">color: \"</span> <span class=\"k\">+</span> traceMessages<span class=\"k\">[</span>i<span class=\"k\">].</span>traceLevel<span class=\"k\">.</span>getColor<span class=\"k\">()</span> <span class=\"k\">+</span> <span class=\"s\">\"</span><span class=\"t\">\\\"</span><span class=\"s\">&gt;\"</span><span class=\"k\">;</span>","                text <span class=\"k\">+=</span> traceMessages<span class=\"k\">[</span>i<span class=\"k\">].</span>message<span class=\"k\">;</span>","                text <span class=\"k\">+=</span> <span class=\"s\">\"&lt;/span&gt;</span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">;</span>","            <span class=\"k\">}</span>","            text <span class=\"k\">+=</span> <span class=\"s\">\"&lt;/blockquote&gt;\"</span><span class=\"k\">;</span>","        <span class=\"k\">}</span>","","        text <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>makeHTMLSafe<span class=\"k\">(</span>text<span class=\"k\">).</span>split<span class=\"k\">(</span><span class=\"s\">'</span><span class=\"t\">\\n</span><span class=\"s\">'</span><span class=\"k\">).</span>join<span class=\"k\">(</span><span class=\"s\">\"</span><span class=\"t\">\\n</span><span class=\"s\">&lt;br /&gt;</span><span class=\"t\">\\n</span><span class=\"s\">\"</span><span class=\"k\">);</span>","        text <span class=\"k\">=</span> text<span class=\"k\">.</span>replace<span class=\"k\">(</span><span class=\"s\">/(Stack trace follows:\\n)/</span><span class=\"k\">,</span> <span class=\"s\">\"$1&lt;div class=</span><span class=\"t\">\\\"</span><span class=\"s\">stackTrace</span><span class=\"t\">\\\"</span><span class=\"s\">&gt;\"</span><span class=\"k\">)</span> <span class=\"k\">+</span> <span class=\"s\">\"&lt;/div&gt;\"</span><span class=\"k\">;</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_testResultDetailsDiv<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> text<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _displayTestResult<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>theTest<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> timeTaken <span class=\"k\">=</span> theTest<span class=\"k\">.</span>timeTaken<span class=\"k\">;</span>","","        <span class=\"k\">var</span> manager <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">;</span>","        <span class=\"k\">var</span> clicked <span class=\"k\">=</span> <span class=\"k\">function</span><span class=\"k\">()</span> <span class=\"k\">{</span>","            manager<span class=\"k\">.</span>_showDetails<span class=\"k\">.</span>call<span class=\"k\">(</span>manager<span class=\"k\">,</span> theTest<span class=\"k\">);</span>","        <span class=\"k\">}</span><span class=\"k\">;</span>","","        <span class=\"k\">var</span> div <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_createItem<span class=\"k\">(</span><span class=\"s\">\"&amp;nbsp;&amp;nbsp;\"</span> <span class=\"k\">+</span> theTest<span class=\"k\">.</span>testName<span class=\"k\">,</span> theTest<span class=\"k\">.</span>status<span class=\"k\">,</span> clicked<span class=\"k\">);</span>","        theTest<span class=\"k\">.</span>div <span class=\"k\">=</span> div<span class=\"k\">;</span>","        theTest<span class=\"k\">.</span>testPage<span class=\"k\">.</span>testListElement<span class=\"k\">.</span>appendChild<span class=\"k\">(</span>div<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_updateTestResultStatus<span class=\"k\">(</span>theTest<span class=\"k\">);</span>","","        <span class=\"k\">this</span><span class=\"k\">.</span>_testPageUpdate<span class=\"k\">(</span>theTest<span class=\"k\">.</span>testPage<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_clearRecentlyUpdated<span class=\"k\">(</span><span class=\"k\">false</span><span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _updateTestResultStatus<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>theTest<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> element <span class=\"k\">=</span> theTest<span class=\"k\">.</span>div<span class=\"k\">;</span>","        element<span class=\"k\">.</span>setAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">,</span> <span class=\"s\">\"testResult \"</span> <span class=\"k\">+</span> theTest<span class=\"k\">.</span>status<span class=\"k\">);</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_addRecentlyUpdated<span class=\"k\">(</span>element<span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _createItem<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>name<span class=\"k\">,</span> status<span class=\"k\">,</span> onClick<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> div <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>_uiDoc<span class=\"k\">.</span>createElement<span class=\"k\">(</span><span class=\"s\">\"li\"</span><span class=\"k\">);</span>","        <span class=\"k\">if</span> <span class=\"k\">(</span>div<span class=\"k\">.</span>addEventListener<span class=\"k\">)</span> <span class=\"k\">{</span>","            div<span class=\"k\">.</span>addEventListener<span class=\"k\">(</span><span class=\"s\">\"click\"</span><span class=\"k\">,</span> onClick<span class=\"k\">,</span> <span class=\"k\">true</span><span class=\"k\">);</span>","        <span class=\"k\">}</span> <span class=\"k\">else</span> <span class=\"k\">if</span> <span class=\"k\">(</span>div<span class=\"k\">.</span>attachEvent<span class=\"k\">)</span> <span class=\"k\">{</span>","            div<span class=\"k\">.</span>attachEvent<span class=\"k\">(</span><span class=\"s\">'on'</span> <span class=\"k\">+</span> <span class=\"s\">\"click\"</span><span class=\"k\">,</span> onClick<span class=\"k\">);</span>","        <span class=\"k\">}</span>","","<span class=\"c\">//        div.addNode(document.createTextNode(theTest.getFunctionName()));</span>","        div<span class=\"k\">.</span>innerHTML <span class=\"k\">=</span> name<span class=\"k\">;</span>","        <span class=\"k\">return</span> div<span class=\"k\">;</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _displayTestException<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>problemValue<span class=\"k\">,</span> problemMessage<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">var</span> listField <span class=\"k\">=</span> <span class=\"k\">this</span><span class=\"k\">.</span>problemsListField<span class=\"k\">;</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_addOption<span class=\"k\">(</span>listField<span class=\"k\">,</span> problemValue<span class=\"k\">,</span> problemMessage<span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    addedTraceData<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>theTest<span class=\"k\">,</span> traceMessage<span class=\"k\">)</span> <span class=\"k\">{</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    showPassed<span class=\"k\">:</span> <span class=\"k\">function</span><span class=\"k\">(</span>shouldShow<span class=\"k\">)</span> <span class=\"k\">{</span>","        <span class=\"k\">this</span><span class=\"k\">.</span>_testsInfoCompleteDiv<span class=\"k\">.</span>setAttribute<span class=\"k\">(</span><span class=\"s\">\"class\"</span><span class=\"k\">,</span> shouldShow <span class=\"k\">?</span> <span class=\"s\">\"showPassed\"</span> <span class=\"k\">:</span> <span class=\"s\">\"hidePassed\"</span><span class=\"k\">);</span>","    <span class=\"k\">}</span><span class=\"k\">,</span>","","    _last<span class=\"k\">:</span> <span class=\"k\">null</span>","","<span class=\"k\">}</span><span class=\"k\">);</span>","",""];
_$jscoverage['app/ModernUiManager.js'][1]++;
Function.prototype.bind = (function () {
  _$jscoverage['app/ModernUiManager.js'][2]++;
  var __method = this, args = Array.prototype.slice.call(arguments, 1), object = arguments[0];
  _$jscoverage['app/ModernUiManager.js'][3]++;
  return (function () {
  _$jscoverage['app/ModernUiManager.js'][4]++;
  return __method.apply(object, args.concat(Array.prototype.slice.call(arguments)));
});
});
_$jscoverage['app/ModernUiManager.js'][8]++;
JsUnit.ModernUiManager = (function (testManager) {
  _$jscoverage['app/ModernUiManager.js'][9]++;
  this._testManager = testManager;
  _$jscoverage['app/ModernUiManager.js'][11]++;
  this._recentlyUpdated = [];
  _$jscoverage['app/ModernUiManager.js'][12]++;
  this._recentlyUpdatedClearTime = 0;
});
_$jscoverage['app/ModernUiManager.js'][15]++;
JsUnit.Util.inherit(JsUnit.BaseUiManager, JsUnit.ModernUiManager);
_$jscoverage['app/ModernUiManager.js'][17]++;
JsUnit.ModernUiManager.prototype.onLoad = (function (uiWindow) {
  _$jscoverage['app/ModernUiManager.js'][18]++;
  this._uiWindow = uiWindow;
  _$jscoverage['app/ModernUiManager.js'][19]++;
  this._uiDoc = uiWindow.document;
  _$jscoverage['app/ModernUiManager.js'][21]++;
  this._testFileInput = this._uiDoc.getElementById("testFileInput");
  _$jscoverage['app/ModernUiManager.js'][23]++;
  this._statusTextNode = this._findTextNode("status");
  _$jscoverage['app/ModernUiManager.js'][24]++;
  this._runCountTextNode = this._findTextNode("runCount");
  _$jscoverage['app/ModernUiManager.js'][25]++;
  this._errorCountTextNode = this._findTextNode("errorCount");
  _$jscoverage['app/ModernUiManager.js'][26]++;
  this._failureCountTextNode = this._findTextNode("failureCount");
  _$jscoverage['app/ModernUiManager.js'][27]++;
  this._elapsedTimeTextNode = this._findTextNode("elapsedTime");
  _$jscoverage['app/ModernUiManager.js'][29]++;
  this._progressBar = this._uiDoc.getElementById("progress");
  _$jscoverage['app/ModernUiManager.js'][32]++;
  this._testsInfoDiv = this._uiDoc.getElementById("testsInfo");
  _$jscoverage['app/ModernUiManager.js'][33]++;
  this._testsInfoCompleteDiv = this._uiDoc.getElementById("testsInfoComplete");
  _$jscoverage['app/ModernUiManager.js'][34]++;
  this._testsInfoCurrentSuiteDiv = this._uiDoc.getElementById("testsInfoCurrentSuite");
  _$jscoverage['app/ModernUiManager.js'][35]++;
  this._testsInfoCurrentTestTextNode = this._findTextNode("testsInfoCurrentTest");
  _$jscoverage['app/ModernUiManager.js'][37]++;
  this._testResultTestDiv = this._uiDoc.getElementById("testResultTest");
  _$jscoverage['app/ModernUiManager.js'][38]++;
  this._testResultDetailsDiv = this._uiDoc.getElementById("testResultDetails");
  _$jscoverage['app/ModernUiManager.js'][40]++;
  this.showPassed(false);
});
_$jscoverage['app/ModernUiManager.js'][43]++;
JsUnit.ModernUiManager.prototype.getUiFrameUrl = (function () {
  _$jscoverage['app/ModernUiManager.js'][44]++;
  return "./app/modernUi.html";
});
_$jscoverage['app/ModernUiManager.js'][47]++;
JsUnit.ModernUiManager.prototype.getTestFileName = (function () {
  _$jscoverage['app/ModernUiManager.js'][48]++;
  return this._testFileInput.value;
});
_$jscoverage['app/ModernUiManager.js'][51]++;
JsUnit.ModernUiManager.prototype.getTraceLevel = (function () {
  _$jscoverage['app/ModernUiManager.js'][52]++;
  return JsUnitTraceLevel.NONE;
});
_$jscoverage['app/ModernUiManager.js'][55]++;
JsUnit.ModernUiManager.prototype.starting = (function () {
  _$jscoverage['app/ModernUiManager.js'][56]++;
  this._testsInfoCompleteDiv.innerHTML = "";
  _$jscoverage['app/ModernUiManager.js'][57]++;
  this._testResultDetailsDiv.innerHTML = "";
});
_$jscoverage['app/ModernUiManager.js'][60]++;
JsUnit.ModernUiManager.prototype.submittingResults = (function () {
});
_$jscoverage['app/ModernUiManager.js'][63]++;
JsUnit.ModernUiManager.prototype.showMessageForSelectedProblemTest = (function () {
});
_$jscoverage['app/ModernUiManager.js'][66]++;
JsUnit.ModernUiManager.prototype.showMessagesForAllProblemTests = (function () {
});
_$jscoverage['app/ModernUiManager.js'][69]++;
JsUnit.ModernUiManager.prototype.showLog = (function () {
});
_$jscoverage['app/ModernUiManager.js'][72]++;
JsUnit.ModernUiManager.prototype.fatalError = (function (aMessage) {
  _$jscoverage['app/ModernUiManager.js'][73]++;
  if (this._testManager._params.shouldSuppressDialogs()) {
    _$jscoverage['app/ModernUiManager.js'][74]++;
    this.setStatus(aMessage);
  }
  else {
    _$jscoverage['app/ModernUiManager.js'][76]++;
    alert(aMessage);
  }
});
_$jscoverage['app/ModernUiManager.js'][79]++;
JsUnit.ModernUiManager.prototype.userConfirm = (function (aMessage) {
  _$jscoverage['app/ModernUiManager.js'][80]++;
  if (this._testManager._params.shouldSuppressDialogs()) {
    _$jscoverage['app/ModernUiManager.js'][81]++;
    return false;
  }
  else {
    _$jscoverage['app/ModernUiManager.js'][83]++;
    return confirm(aMessage);
  }
});
_$jscoverage['app/ModernUiManager.js'][86]++;
Object.extend = (function (obj, extendWith) {
  _$jscoverage['app/ModernUiManager.js'][87]++;
  for (var name in extendWith) {
    _$jscoverage['app/ModernUiManager.js'][88]++;
    obj[name] = extendWith[name];
}
});
_$jscoverage['app/ModernUiManager.js'][92]++;
Object.extend(JsUnit.ModernUiManager.prototype, {_findTextNode: (function (id) {
  _$jscoverage['app/ModernUiManager.js'][94]++;
  var element = this._uiDoc.getElementById(id);
  _$jscoverage['app/ModernUiManager.js'][95]++;
  if ((element.childNodes.length == 1)) {
    _$jscoverage['app/ModernUiManager.js'][96]++;
    return element.childNodes[0];
  }
  _$jscoverage['app/ModernUiManager.js'][98]++;
  var node = this._uiDoc.createTextNode("");
  _$jscoverage['app/ModernUiManager.js'][99]++;
  element.appendChild(node);
  _$jscoverage['app/ModernUiManager.js'][100]++;
  return node;
}), _setSpanText: (function (span, text) {
  _$jscoverage['app/ModernUiManager.js'][104]++;
  span.innerHTML = text;
}), _setTextNode: (function (textNode, text) {
  _$jscoverage['app/ModernUiManager.js'][108]++;
  textNode.data = text;
}), setStatus: (function (str) {
  _$jscoverage['app/ModernUiManager.js'][112]++;
  this._setTextNode(this._statusTextNode, str);
}), _addRecentlyUpdated: (function (element) {
  _$jscoverage['app/ModernUiManager.js'][116]++;
  var cssClasses = element.getAttribute("class");
  _$jscoverage['app/ModernUiManager.js'][117]++;
  if ((cssClasses.indexOf(" recentlyUpdated") > -1)) {
    _$jscoverage['app/ModernUiManager.js'][117]++;
    return;
  }
  _$jscoverage['app/ModernUiManager.js'][119]++;
  element.setAttribute("class", (cssClasses + " recentlyUpdated"));
  _$jscoverage['app/ModernUiManager.js'][120]++;
  this._recentlyUpdated.push(element);
  _$jscoverage['app/ModernUiManager.js'][122]++;
  this._testsInfoDiv.scrollTop = (element.offsetTop - 30);
}), _clearRecentlyUpdated: (function (clearAll) {
  _$jscoverage['app/ModernUiManager.js'][126]++;
  if ((this._recentlyUpdated.length == 0)) {
    _$jscoverage['app/ModernUiManager.js'][126]++;
    return;
  }
  _$jscoverage['app/ModernUiManager.js'][128]++;
  var time = new Date().getTime();
  _$jscoverage['app/ModernUiManager.js'][129]++;
  if (((! clearAll) && (time < (this._recentlyUpdatedClearTime + 250)))) {
    _$jscoverage['app/ModernUiManager.js'][129]++;
    return;
  }
  _$jscoverage['app/ModernUiManager.js'][130]++;
  this._recentlyUpdatedClearTime = time;
  _$jscoverage['app/ModernUiManager.js'][131]++;
  var lastToClear = this._recentlyUpdated.length;
  _$jscoverage['app/ModernUiManager.js'][132]++;
  if ((! clearAll)) {
    _$jscoverage['app/ModernUiManager.js'][132]++;
    (lastToClear--);
  }
  _$jscoverage['app/ModernUiManager.js'][133]++;
  for (var i = 0; (i < lastToClear); (i++)) {
    _$jscoverage['app/ModernUiManager.js'][134]++;
    var element = this._recentlyUpdated[i];
    _$jscoverage['app/ModernUiManager.js'][135]++;
    var cssClasses = element.getAttribute("class").replace(" recentlyUpdated", "");
    _$jscoverage['app/ModernUiManager.js'][136]++;
    element.setAttribute("class", cssClasses);
}
}), finishing: (function () {
  _$jscoverage['app/ModernUiManager.js'][141]++;
  this._clearRecentlyUpdated(true);
  _$jscoverage['app/ModernUiManager.js'][142]++;
  this._setTextNode(this._testsInfoCurrentTestTextNode, "");
}), _setProgressBarImage: (function (imgName) {
  _$jscoverage['app/ModernUiManager.js'][146]++;
  this._progressBar.src = imgName;
}), _setProgressBarWidth: (function (w) {
  _$jscoverage['app/ModernUiManager.js'][150]++;
  this._progressBar.width = w;
}), updateProgressIndicators: (function (totalCount, errorCount, failureCount, progressBarProportion) {
  _$jscoverage['app/ModernUiManager.js'][154]++;
  this._setTextNode(this._runCountTextNode, totalCount);
  _$jscoverage['app/ModernUiManager.js'][155]++;
  this._setTextNode(this._errorCountTextNode, errorCount);
  _$jscoverage['app/ModernUiManager.js'][156]++;
  this._setTextNode(this._failureCountTextNode, failureCount);
  _$jscoverage['app/ModernUiManager.js'][157]++;
  this._setProgressBarWidth((300 * progressBarProportion));
  _$jscoverage['app/ModernUiManager.js'][159]++;
  if (((errorCount > 0) || (failureCount > 0))) {
    _$jscoverage['app/ModernUiManager.js'][160]++;
    this._setProgressBarImage("../images/red.gif");
  }
  else {
    _$jscoverage['app/ModernUiManager.js'][162]++;
    this._setProgressBarImage("../images/green.gif");
  }
}), learnedOfTestPage: (function (testPage) {
  _$jscoverage['app/ModernUiManager.js'][168]++;
  testPage.headerElement = this._uiDoc.createElement("li");
  _$jscoverage['app/ModernUiManager.js'][169]++;
  testPage.headerElement.innerHTML = testPage.url;
  _$jscoverage['app/ModernUiManager.js'][171]++;
  testPage.testListElement = this._uiDoc.createElement("ul");
  _$jscoverage['app/ModernUiManager.js'][173]++;
  this._testsInfoCompleteDiv.appendChild(testPage.headerElement);
  _$jscoverage['app/ModernUiManager.js'][174]++;
  this._testsInfoCompleteDiv.appendChild(testPage.testListElement);
  _$jscoverage['app/ModernUiManager.js'][176]++;
  this._testPageUpdate(testPage, JsUnit.TestPage.STATUS_CHANGE_EVENT);
  _$jscoverage['app/ModernUiManager.js'][177]++;
  testPage.listen(this._testPageUpdate.bind(this));
}), _testPageUpdate: (function (testPage, event) {
  _$jscoverage['app/ModernUiManager.js'][181]++;
  if ((event == JsUnit.TestPage.READY_EVENT)) {
    _$jscoverage['app/ModernUiManager.js'][182]++;
    for (var i = 0; (i < testPage.tests.length); (i++)) {
      _$jscoverage['app/ModernUiManager.js'][183]++;
      var theTest = testPage.tests[i];
      _$jscoverage['app/ModernUiManager.js'][184]++;
      theTest.listen(this.testCompleted.bind(this));
      _$jscoverage['app/ModernUiManager.js'][185]++;
      this._displayTestResult(theTest);
}
  }
  _$jscoverage['app/ModernUiManager.js'][188]++;
  testPage.headerElement.setAttribute("class", ("testPage " + testPage.getStatus()));
  _$jscoverage['app/ModernUiManager.js'][189]++;
  this._addRecentlyUpdated(testPage.headerElement);
}), testCompleted: (function (test) {
  _$jscoverage['app/ModernUiManager.js'][193]++;
  this._updateTestResultStatus(test);
}), _showDetails: (function (theTest) {
  _$jscoverage['app/ModernUiManager.js'][198]++;
  var div = theTest.div;
  _$jscoverage['app/ModernUiManager.js'][199]++;
  this._testResultTestDiv.innerHTML = (theTest.testPage.url + "." + theTest.testName);
  _$jscoverage['app/ModernUiManager.js'][200]++;
  var text;
  _$jscoverage['app/ModernUiManager.js'][201]++;
  switch (theTest.status) {
  case "success":
    _$jscoverage['app/ModernUiManager.js'][203]++;
    text = "Test succeeded!";
    _$jscoverage['app/ModernUiManager.js'][204]++;
    break;
  case "failure":
  case "error":
    _$jscoverage['app/ModernUiManager.js'][207]++;
    text = (theTest.message + ":\n");
    _$jscoverage['app/ModernUiManager.js'][208]++;
    text += this.problemDetailMessageFor(theTest.exception);
    _$jscoverage['app/ModernUiManager.js'][209]++;
    break;
  default:
    _$jscoverage['app/ModernUiManager.js'][211]++;
    throw new Error(("unknown status '" + theTest.status + "'"));
  }
  _$jscoverage['app/ModernUiManager.js'][214]++;
  var traceMessages = theTest.traceMessages;
  _$jscoverage['app/ModernUiManager.js'][215]++;
  if ((traceMessages.length > 0)) {
    _$jscoverage['app/ModernUiManager.js'][216]++;
    text += "<blockquote>";
    _$jscoverage['app/ModernUiManager.js'][217]++;
    for (var i = 0; (i < traceMessages.length); (i++)) {
      _$jscoverage['app/ModernUiManager.js'][218]++;
      text += ("<span style=\"color: " + traceMessages[i].traceLevel.getColor() + "\">");
      _$jscoverage['app/ModernUiManager.js'][219]++;
      text += traceMessages[i].message;
      _$jscoverage['app/ModernUiManager.js'][220]++;
      text += "</span>\n";
}
    _$jscoverage['app/ModernUiManager.js'][222]++;
    text += "</blockquote>";
  }
  _$jscoverage['app/ModernUiManager.js'][225]++;
  text = this.makeHTMLSafe(text).split("\n").join("\n<br />\n");
  _$jscoverage['app/ModernUiManager.js'][226]++;
  text = (text.replace(/(Stack trace follows:\n)/, "$1<div class=\"stackTrace\">") + "</div>");
  _$jscoverage['app/ModernUiManager.js'][227]++;
  this._testResultDetailsDiv.innerHTML = text;
}), _displayTestResult: (function (theTest) {
  _$jscoverage['app/ModernUiManager.js'][231]++;
  var timeTaken = theTest.timeTaken;
  _$jscoverage['app/ModernUiManager.js'][233]++;
  var manager = this;
  _$jscoverage['app/ModernUiManager.js'][234]++;
  var clicked = (function () {
  _$jscoverage['app/ModernUiManager.js'][235]++;
  manager._showDetails.call(manager, theTest);
});
  _$jscoverage['app/ModernUiManager.js'][238]++;
  var div = this._createItem(("&nbsp;&nbsp;" + theTest.testName), theTest.status, clicked);
  _$jscoverage['app/ModernUiManager.js'][239]++;
  theTest.div = div;
  _$jscoverage['app/ModernUiManager.js'][240]++;
  theTest.testPage.testListElement.appendChild(div);
  _$jscoverage['app/ModernUiManager.js'][241]++;
  this._updateTestResultStatus(theTest);
  _$jscoverage['app/ModernUiManager.js'][243]++;
  this._testPageUpdate(theTest.testPage);
  _$jscoverage['app/ModernUiManager.js'][244]++;
  this._clearRecentlyUpdated(false);
}), _updateTestResultStatus: (function (theTest) {
  _$jscoverage['app/ModernUiManager.js'][248]++;
  var element = theTest.div;
  _$jscoverage['app/ModernUiManager.js'][249]++;
  element.setAttribute("class", ("testResult " + theTest.status));
  _$jscoverage['app/ModernUiManager.js'][250]++;
  this._addRecentlyUpdated(element);
}), _createItem: (function (name, status, onClick) {
  _$jscoverage['app/ModernUiManager.js'][254]++;
  var div = this._uiDoc.createElement("li");
  _$jscoverage['app/ModernUiManager.js'][255]++;
  if (div.addEventListener) {
    _$jscoverage['app/ModernUiManager.js'][256]++;
    div.addEventListener("click", onClick, true);
  }
  else {
    _$jscoverage['app/ModernUiManager.js'][257]++;
    if (div.attachEvent) {
      _$jscoverage['app/ModernUiManager.js'][258]++;
      div.attachEvent("onclick", onClick);
    }
  }
  _$jscoverage['app/ModernUiManager.js'][262]++;
  div.innerHTML = name;
  _$jscoverage['app/ModernUiManager.js'][263]++;
  return div;
}), _displayTestException: (function (problemValue, problemMessage) {
  _$jscoverage['app/ModernUiManager.js'][267]++;
  var listField = this.problemsListField;
  _$jscoverage['app/ModernUiManager.js'][268]++;
  this._addOption(listField, problemValue, problemMessage);
}), addedTraceData: (function (theTest, traceMessage) {
}), showPassed: (function (shouldShow) {
  _$jscoverage['app/ModernUiManager.js'][275]++;
  this._testsInfoCompleteDiv.setAttribute("class", (shouldShow? "showPassed": "hidePassed"));
}), _last: null});

