<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#ffffff">
    Hi guys,<br>
    <br>
    I've updated all testcases on master to use JUnit 4 style<br>
    (except for drools-eclipse and the non-active parts of drools-grid).<br>
    The main reason is so we now let hudson report how many testcases
    are ignored (annoted with @Ignore instead of disabled).<br>
    <br>
    Some notes:<br>
    <ul>
      <li><b>Don't disable testcases by prefixing them with FIXME_ or
          disabled_ or by commenting out @Test</b></li>
      <ul>
        <li><b>Instead, add the @Ignore annotation</b></li>
        <ul>
          <li>This way hudson gives us a report on how many testcases
            have been ignored.</li>
        </ul>
      </ul>
      <li><b>Don't use try-catch to test if an exception is thrown. Use
          @Test(expected = MyException.class)</b></li>
      <ul>
        <li>I haven't migrated this in all testcases, as I couldn't
          automate that.</li>
        <li>Please fix it in any code you come across.<br>
        </li>
      </ul>
      <li>To use assertions like assertEquals(a,b), just add this
        import:</li>
      <ul>
        <li>import static org.junit.Assert.*;<br>
        </li>
      </ul>
      <li>Don't import anything from junit.framework.*.</li>
      <ul>
        <li>Import only from org.junit.*</li>
        <li>Configure your Eclipse/Intellij to not propose those imports
          to keep mistakes to a minimum.<br>
        </li>
      </ul>
      <li>TestSuites have been removed.</li>
      <ul>
        <li>Use your Eclipse/IntelliJ to single out tests, packages of
          tests or modules.</li>
        <li>They bring extra maintenance (and seem to be seen as legacy
          since junit 4?)</li>
      </ul>
      <li>Testcases that print out their own name, no longer print out
        their own name</li>
      <ul>
        <li>The junit runner prints out the name already</li>
        <ul>
          <li>Otherwise it looks like it's run twice (while it's not)</li>
        </ul>
      </ul>
    </ul>
    I hope this push (many files were changed) doesn't cause to many
    merge conflicts.<br>
    If it does: just take your revision and upgrade your file to junit 4
    manually.<br>
    <br>
    Learn more:<br>
    - Junit 4 in 60 seconds:
    <a class="moz-txt-link-freetext" href="http://www.cavdar.net/2008/07/21/junit-4-in-60-seconds/">http://www.cavdar.net/2008/07/21/junit-4-in-60-seconds/</a><br>
    <pre class="moz-signature" cols="72">-- 
With kind regards,
Geoffrey De Smet</pre>
  </body>
</html>