alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

What this is

This file is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Other links

The source code

/* @author Edward Hieatt, edward@jsunit.net */

function jsUnitTracer() {
  this._traceWindow        = null;
  this.TRACE_LEVEL_WARNING = 1;
  this.TRACE_LEVEL_INFO    = 2;
  this.TRACE_LEVEL_DEBUG   = 3;
  this.popupWindowsBlocked = false;
}

jsUnitTracer.prototype.initialize = function () 
{
  if (this._traceWindow != null && top.testManager.closeTraceWindowOnNewRun.checked)
    this._traceWindow.close();

  this._traceWindow = null;
}

jsUnitTracer.prototype.finalize = function () 
{
  if (this._traceWindow!=null) {
    this._traceWindow.document.write('<\/body>\n<\/html>');
    this._traceWindow.document.close();
  }
}

jsUnitTracer.prototype.warn = function () 
{
  this._trace(arguments[0], arguments[1], this.TRACE_LEVEL_WARNING);
}

jsUnitTracer.prototype.inform = function () 
{
  this._trace(arguments[0], arguments[1], this.TRACE_LEVEL_INFO);
}

jsUnitTracer.prototype.debug = function () 
{
  this._trace(arguments[0], arguments[1], this.TRACE_LEVEL_DEBUG);
}

jsUnitTracer.prototype._trace = function (message, value, traceLevel) 
{
  if (this._getChosenTraceLevel() >= traceLevel) {
    var traceString = message;
    if (value)
      traceString += ': ' + value;
    this._writeToTraceWindow(traceString, traceLevel);
  }
}

jsUnitTracer.prototype._getChosenTraceLevel = function () 
{
  return eval(top.testManager.traceLevel.value);
}

jsUnitTracer.prototype._writeToTraceWindow  = function (traceString, traceLevel) 
{
  var htmlToAppend = '<p class="jsUnitDefault">' + traceString + '<\/p>\n';
  this._getTraceWindow().document.write(htmlToAppend);
}

jsUnitTracer.prototype._getTraceWindow = function () 
{
  if (this._traceWindow == null && !this.popupWindowsBlocked) {
    this._traceWindow = window.open('','','width=600, height=350,status=no,resizable=yes,scrollbars=yes');
    if (!this._traceWindow) {
      this.popupWindowsBlocked = true;
    }
    else {
      var resDoc = this._traceWindow.document;
      resDoc.write('<html>\n\n\nTracing - JsUnit<\/title>\n<head>\n<body>');
      resDoc.write('<h2>Tracing - JsUnit<\/h2>\n');
    }
  }
  return this._traceWindow;
}

if (xbDEBUG.on)
{
  xbDebugTraceObject('window', 'jsUnitTracer');
}

</pre>
</td>
</tr>
</table>
</div>

<div style="padding-top: 1em; width: 310px; margin-left: auto; margin-right: auto; table {border-collapse: collapse; border: none;}; tr {border-collapse: collapse; border: none; text-align: center;};">
<table width="100%" cellspacing="0" cellpadding="0">
  <tr>
      <td colspan="2" style="border-collapse: collapse; border: none; text-align: center;};">
        <em>... this post is sponsored by my books ...</em>
      </td>
  </tr>
  <tr>
      <td width="150" style="border-collapse: collapse; border: none; text-align: center;};">
        <a href="https://kbhr.co/ckbk-v2"><img
           src="/images/books/scala-cookbook-v2-cover-220h.jpg"
           title="The Scala Cookbook, by Alvin Alexander" height="220" />
           <br /><span style="opacity: 0.4;">#1 New Release!</span></a>
      </td>
      <td width="150" style="border-collapse: collapse; border: none; text-align: center; padding-left: 8px;">
        <a href="http://kbhr.co/fps-book"><img
           src="/images/books/functional-programming-simplified-small.jpg"
           title="Functional Programming, Simplified, by Alvin Alexander"
           height="220" />
           <br /><span style="opacity: 0.4;">FP Best Seller</span></a>
      </td>
  </tr>
</table>
<p> </p>
</div>


<div id="whats_new">
<h2>new blog posts</h2>
<div id="whats_new_list">
<ul>
<li><a class="whats_new_link" href="/scala/scala-3-dates-calculating-difference-between-two-dates">Scala dates FAQ: How do I calculate the difference between two dates (LocalDate, ChronoUnit)</a></li>
<li><a class="whats_new_link" href="/personal/mindfulness-purposes-motivations-why-be-mindful">The purposes of mindfulness (or, why bother being mindful, and motivation)</a></li>
<li><a class="whats_new_link" href="/personal/ram-dass-glossary-terms-maharaji-yoga">A glossary of terms related to Ram Dass, Maharaj-ji, yoga, Zen, Buddhism, and more</a></li>
<br/>
<li><a class="whats_new_link" href="/java/how-round-double-float-two-decimal-places-format-output">Java: How to round a double (or float) to two decimal places? (formatting output)</a></li>
<li><a class="whats_new_link" href="/personal/ram-dass-best-books-rankings-recommendations-maharaj-ji-spirituality">What are Ram Dass'''s best books (recommendations, ranked)</a></li>
<li><a class="whats_new_link" href="/personal/meditate-deeper-faster-best-ways-quickly-get-into-meditative-state">Dive Deeper, Faster: 12 Techniques to Quicken and Deepen Your Meditation Practice</a></li>
<br/>
<li><a class="whats_new_link" href="/personal/elton-john-tiny-dancer-music-video-story-meaning">Elton John'''s Tiny Dancer music video: Its story and meaning</a></li>
<li><a class="whats_new_link" href="/misc/intellij-idea-macos-how-move-next-previous-editor-tab-solution">IntelliJ IDEA MacOS: Next tab, previous tab keystrokes</a></li>
<li><a class="whats_new_link" href="/personal/song-lyrics-what-do-you-think-about-when-you-think-about-me">Song lyrics: What do you think about when you think about me?</a></li>
<br/>
<br/>
</div>
</ul>
</div>


<p> </p>

<p align="center"><font color="#000000" size="2"
face="Verdana,Arial">Copyright 1998-2021 Alvin Alexander, alvinalexander.com<br/>
All Rights Reserved.<br/>
<br/>
A percentage of advertising revenue from<br/>
pages under the <a href="/java/jwarehouse">/java/jwarehouse</a> 
URI on this website is<br/>
paid back to open source projects.</p>


<script>
shuffle(books);
var div = document.getElementById("leftcol");
var pre = '<div style="margin: 0; padding-right: 1.6em"><h2 align="center">favorite books</h2>';
var post = '</div>';
if (adblock) {
  var str = books.slice(0,3).join(" ");
  div.insertAdjacentHTML('beforeend', pre + str + post);
} else {
  var str = books.slice(0,1).join(" ");
  div.insertAdjacentHTML('beforeend', pre + str + post);
}
</script>



<p style="padding-bottom: 80px;"> </p>


</body>