blob: 541c3070f3b7abaee0f4cc84addb6534ad963a1c [file] [log] [blame]
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Change History for the NetBeans JUnit Extensions API</title>
<link rel="stylesheet" href="prose.css" type="text/css">
</head>
<body>
<p class="overviewlink">
<a href="overview-summary.html" shape="rect">Overview</a>
</p>
<h1>Introduction</h1>
<p>This document lists changes made to the <a href="index.html" shape="rect">NetBeans JUnit Extensions</a> API.</p>
<!-- The actual lists of changes, as summaries and details: -->
<hr>
<h1>
<a name="list-all-apis">Index of APIs</a>
</h1>
<ul>
<li>
<a href="#nbjunit">NetBeans JUnit Extensions</a>
</li>
</ul>
<h1>
<a name="incompat-by-date">Incompatible changes by date</a>
</h1>
<p>Fuller descriptions of all changes can be found below (follow links).</p>
<p>Not all deprecations are listed here, assuming that the deprecated
APIs continue to essentially work. For a full deprecation list, please
consult the
<a href="deprecated-list.html">Javadoc</a>.</p>
<ul>
<li>(Dec 20 '08) <a href="#NbModuleSuite.enableModulesForCluster">Enable modules in a cluster</a>
</li>
<li>(Dec 20 '08) <a href="#NbModuleSuite.clustersMulti">NbModuleSuite's clusters method can be called multiple times</a>
</li>
</ul>
<h1>
<a name="all-by-date">All changes by date</a>
</h1>
<ul>
<li>(Dec 1 '11) <a href="#branding.token">System property branding.token</a>
</li>
<li>(Nov 11 '11) <a href="#NbModuleSuite.Configuration.hideExtraModules">NbModuleSuite.Configuration.hideExtraModules()</a>
</li>
<li>(May 19 '11) <a href="#NbModuleSuite.Configuration.suite">NbModuleSuite.Configuration.suite()</a>
</li>
<li>(May 5 '11) <a href="#NbTestCase.logRoot"><code>NbTestCase.logRoot</code> to collect messages from just some code</a>
</li>
<li>(Apr 8 '11) <a href="#NbModuleSuite.Configuration.addStartupArgument">NbModuleSuite.Configuration.addStartupArgument</a>
</li>
<li>(Mar 15 '09) <a href="#NbModuleSuite.failOn">Easy way to fail the test on error or warning</a>
</li>
<li>(Feb 13 '09) <a href="#NbModuleSuite.honorAutoloadEager">Leave autoloads as autoloads and eagers as eager</a>
</li>
<li>(Jan 5 '09) <a href="#NbModuleSuite.enableClasspathModules">Ignore modules on classpath</a>
</li>
<li>(Dec 20 '08) <a href="#NbModuleSuite.enableModulesForCluster">Enable modules in a cluster</a>
</li>
<li>(Dec 20 '08) <a href="#NbModuleSuite.clustersMulti">NbModuleSuite's clusters method can be called multiple times</a>
</li>
<li>(Aug 8 '08) <a href="#Log.assertInstancesWithNames">Log.assertInstances can take list of names one is searching for</a>
</li>
<li>(Jun 19 '08) <a href="#RandomlyFails">Added <code>@RandomlyFails</code></a>
</li>
<li>(Jun 18 '08) <a href="#NbModuleSuite.Configuration.reuseUserDir">NbModuleSuite.Configuration.reuseUserDir(boolean reuse)</a>
</li>
<li>(Jun 11 '08) <a href="#NbModuleSuite.Configuration.addTest">NbModuleSuite.Configuration.addTest(Class &lt; ? extends Test&gt; test)</a>
</li>
<li>(Jun 10 '08) <a href="#NbModuleSuite.emptyConfiguration">NbModuleSuite.emptyConfiguration()</a>
</li>
<li>(Jun 3 '08) <a href="#NbModuleSuite.MultiTestCases">NbModuleSuite can now wrap multiple TestCase</a>
</li>
<li>(Jun 3 '08) <a href="#NbModuleSuite.allModules">New Utilitity methods in NbModuleSuite</a>
</li>
<li>(Feb 29 '08) <a href="#NbModuleSuite">Support class to allow excution of unit tests inside of NetBeans Runtime Container</a>
</li>
<li>(Dec 14 '07) <a href="#CollectData">Support for Garbage Collecting of Log Message Arguments</a>
</li>
<li>(Oct 13 '06) <a href="#PreferencesForTests">Default implementation of Preferences isn't used for running tests anymore</a>
</li>
<li>(Jun 30 '06) <a href="#MockServicesAndLookup">Added class <code>MockServices</code></a>
</li>
<li>(May 11 '06) <a href="#MockServices">Added class <code>MockServices</code></a>
</li>
<li>(Apr 1 '06) <a href="#controlFlow">Non-deterministic execution can be made deterministic</a>
</li>
<li>(Apr 1 '06) <a href="#logging"> Added support for logging</a>
</li>
</ul>
<h1>
<a name="all-by-version">Changes by version</a>
</h1>
<p>
These API specification versions may be used to indicate that a module
requires a certain API feature in order to function. For example, if you
see here a feature you need which is labelled <samp>1.20</samp>, your
manifest should contain in its main attributes the line:
</p>
<pre>OpenIDE-Module-Module-Dependencies: org.netbeans.modules.nbjunit &gt; 1.20</pre>
<ul>
<li>
(1.72.2) <a href="#branding.token">System property branding.token</a>
</li>
<li>
(1.72) <a href="#NbModuleSuite.Configuration.hideExtraModules">NbModuleSuite.Configuration.hideExtraModules()</a>
</li>
<li>
(1.70) <a href="#NbModuleSuite.Configuration.suite">NbModuleSuite.Configuration.suite()</a>
</li>
<li>
(1.69) <a href="#NbModuleSuite.Configuration.addStartupArgument">NbModuleSuite.Configuration.addStartupArgument</a>
</li>
<li>
(1.68) <a href="#NbTestCase.logRoot"><code>NbTestCase.logRoot</code> to collect messages from just some code</a>
</li>
<li>
(1.58) <a href="#NbModuleSuite.failOn">Easy way to fail the test on error or warning</a>
</li>
<li>
(1.57) <a href="#NbModuleSuite.honorAutoloadEager">Leave autoloads as autoloads and eagers as eager</a>
</li>
<li>
(1.56) <a href="#NbModuleSuite.enableClasspathModules">Ignore modules on classpath</a>
</li>
<li>
(1.55) <a href="#NbModuleSuite.enableModulesForCluster">Enable modules in a cluster</a>
</li>
<li>
(1.55) <a href="#NbModuleSuite.clustersMulti">NbModuleSuite's clusters method can be called multiple times</a>
</li>
<li>
(1.53) <a href="#Log.assertInstancesWithNames">Log.assertInstances can take list of names one is searching for</a>
</li>
<li>
(1.52) <a href="#NbModuleSuite.Configuration.reuseUserDir">NbModuleSuite.Configuration.reuseUserDir(boolean reuse)</a>
</li>
<li>
(1.51) <a href="#NbModuleSuite.Configuration.addTest">NbModuleSuite.Configuration.addTest(Class &lt; ? extends Test&gt; test)</a>
</li>
<li>
(1.51) <a href="#NbModuleSuite.emptyConfiguration">NbModuleSuite.emptyConfiguration()</a>
</li>
<li>
(1.51) <a href="#RandomlyFails">Added <code>@RandomlyFails</code></a>
</li>
<li>
(1.50) <a href="#NbModuleSuite.MultiTestCases">NbModuleSuite can now wrap multiple TestCase</a>
</li>
<li>
(1.49) <a href="#NbModuleSuite.allModules">New Utilitity methods in NbModuleSuite</a>
</li>
<li>
(1.46) <a href="#NbModuleSuite">Support class to allow excution of unit tests inside of NetBeans Runtime Container</a>
</li>
<li>
(1.44) <a href="#CollectData">Support for Garbage Collecting of Log Message Arguments</a>
</li>
<li>
(1.38) <a href="#PreferencesForTests">Default implementation of Preferences isn't used for running tests anymore</a>
</li>
<li>
(1.33) <a href="#MockServicesAndLookup">Added class <code>MockServices</code></a>
</li>
<li>
(1.30) <a href="#MockServices">Added class <code>MockServices</code></a>
</li>
<li>
(1.28) <a href="#controlFlow">Non-deterministic execution can be made deterministic</a>
</li>
<li>
(1.27) <a href="#logging"> Added support for logging</a>
</li>
</ul>
<h1>
<a name="all-by-class">Changes by affected class</a>
</h1>
<h2>
<a name="org.netbeans.junit.Log"><code><span style="color:gray">org.netbeans.junit.</span>Log</code></a>
</h2><ul><li>(Dec 14 '07) <a href="#CollectData">Support for Garbage Collecting of Log Message Arguments</a>
</li>
<li>(Apr 1 '06) <a href="#controlFlow">Non-deterministic execution can be made deterministic</a>
</li>
<li>(Apr 1 '06) <a href="#logging"> Added support for logging</a>
</li></ul><h2>
<a name="org.netbeans.junit.MockServices"><code><span style="color:gray">org.netbeans.junit.</span>MockServices</code></a>
</h2><ul><li>(Jun 30 '06) <a href="#MockServicesAndLookup">Added class <code>MockServices</code></a>
</li>
<li>(May 11 '06) <a href="#MockServices">Added class <code>MockServices</code></a>
</li></ul><h2>
<a name="org.netbeans.junit.NbModuleSuite"><code><span style="color:gray">org.netbeans.junit.</span>NbModuleSuite</code></a>
</h2><ul><li>(Dec 1 '11) <a href="#branding.token">System property branding.token</a>
</li>
<li>(Nov 11 '11) <a href="#NbModuleSuite.Configuration.hideExtraModules">NbModuleSuite.Configuration.hideExtraModules()</a>
</li>
<li>(May 19 '11) <a href="#NbModuleSuite.Configuration.suite">NbModuleSuite.Configuration.suite()</a>
</li>
<li>(Apr 8 '11) <a href="#NbModuleSuite.Configuration.addStartupArgument">NbModuleSuite.Configuration.addStartupArgument</a>
</li>
<li>(Mar 15 '09) <a href="#NbModuleSuite.failOn">Easy way to fail the test on error or warning</a>
</li>
<li>(Feb 13 '09) <a href="#NbModuleSuite.honorAutoloadEager">Leave autoloads as autoloads and eagers as eager</a>
</li>
<li>(Jan 5 '09) <a href="#NbModuleSuite.enableClasspathModules">Ignore modules on classpath</a>
</li>
<li>(Dec 20 '08) <a href="#NbModuleSuite.enableModulesForCluster">Enable modules in a cluster</a>
</li>
<li>(Dec 20 '08) <a href="#NbModuleSuite.clustersMulti">NbModuleSuite's clusters method can be called multiple times</a>
</li>
<li>(Aug 8 '08) <a href="#Log.assertInstancesWithNames">Log.assertInstances can take list of names one is searching for</a>
</li>
<li>(Jun 18 '08) <a href="#NbModuleSuite.Configuration.reuseUserDir">NbModuleSuite.Configuration.reuseUserDir(boolean reuse)</a>
</li>
<li>(Jun 11 '08) <a href="#NbModuleSuite.Configuration.addTest">NbModuleSuite.Configuration.addTest(Class &lt; ? extends Test&gt; test)</a>
</li>
<li>(Jun 10 '08) <a href="#NbModuleSuite.emptyConfiguration">NbModuleSuite.emptyConfiguration()</a>
</li>
<li>(Jun 3 '08) <a href="#NbModuleSuite.MultiTestCases">NbModuleSuite can now wrap multiple TestCase</a>
</li>
<li>(Jun 3 '08) <a href="#NbModuleSuite.allModules">New Utilitity methods in NbModuleSuite</a>
</li>
<li>(Feb 29 '08) <a href="#NbModuleSuite">Support class to allow excution of unit tests inside of NetBeans Runtime Container</a>
</li></ul><h2>
<a name="org.netbeans.junit.NbTestCase"><code><span style="color:gray">org.netbeans.junit.</span>NbTestCase</code></a>
</h2><ul><li>(May 5 '11) <a href="#NbTestCase.logRoot"><code>NbTestCase.logRoot</code> to collect messages from just some code</a>
</li>
<li>(Oct 13 '06) <a href="#PreferencesForTests">Default implementation of Preferences isn't used for running tests anymore</a>
</li>
<li>(Apr 1 '06) <a href="#controlFlow">Non-deterministic execution can be made deterministic</a>
</li>
<li>(Apr 1 '06) <a href="#logging"> Added support for logging</a>
</li></ul><h2>
<a name="org.netbeans.junit.RandomlyFails"><code><span style="color:gray">org.netbeans.junit.</span>RandomlyFails</code></a>
</h2><ul><li>(Jun 19 '08) <a href="#RandomlyFails">Added <code>@RandomlyFails</code></a>
</li></ul><hr>
<h1>
<a name="details-by-api">Details of all changes by API and date</a>
</h1>
<hr style="width:50%">
<h2>
<a name="nbjunit">NetBeans JUnit Extensions</a>
</h2>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="branding.token">System property branding.token</a>
</h3>
<em>Dec 1 '11; API spec. version: 1.72.2; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=197066">
#197066</a></em>
<br>
<p>
System.getProperty("<a href="architecture-summary.html#systemproperty-branding.token" shape="rect">branding.token</a>")
recognized and influences branding used during the test.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.Configuration.hideExtraModules">NbModuleSuite.Configuration.hideExtraModules()</a>
</h3>
<em>Nov 11 '11; API spec. version: 1.72; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=185291">
#185291</a></em>
<br>
<p>
Now there is a way to disable not explicitly enabled modules.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.Configuration.suite">NbModuleSuite.Configuration.suite()</a>
</h3>
<em>May 19 '11; API spec. version: 1.70; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=197720">
#197720</a></em>
<br>
<p>
You may now call <code>suite()</code> directly on a <code>Configuration</code> object.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbTestCase.logRoot"><code>NbTestCase.logRoot</code> to collect messages from just some code</a>
</h3>
<em>May 5 '11; API spec. version: 1.68; affected top-level classes: <a href="./org/netbeans/junit/NbTestCase.html"><code>NbTestCase</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=197572">
#197572</a></em>
<br>
<p>
Overridable method to avoid excessive logging of uninteresting components.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.Configuration.addStartupArgument">NbModuleSuite.Configuration.addStartupArgument</a>
</h3>
<em>Apr 8 '11; API spec. version: 1.69; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: tomwheeler; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=197065">
#197065</a></em>
<br>
<p>NbModuleSuite.Configuration now has a
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#addStartupArgument-java.lang.String...-" shape="rect">
addStartupArgument</a>
method which allows one to append one or more command line
arguments which will be used to start the application.
Arguments which must be passed directly to the JVM should
still be specified in the <code>test.run.args</code> property.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.failOn">Easy way to fail the test on error or warning</a>
</h3>
<em>Mar 15 '09; API spec. version: 1.58; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=155444">
#155444</a></em>
<br>
<p>
Do you need to fail the test when some wrong message or
exception is logged? Easy now with
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#failOnMessage-java.util.logging.Level-" shape="rect">
Configuration.failOnMessage(Level.WARNING)</a> and
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#failOnException-java.util.logging.Level-" shape="rect">
Configuration.failOnException(Level.INFO)</a>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.honorAutoloadEager">Leave autoloads as autoloads and eagers as eager</a>
</h3>
<em>Feb 13 '09; API spec. version: 1.57; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach</em>
<br>
<p>
One can decide to <b>not</b> enable autoload modules
by calling
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#honorAutoloadEager-boolean-" shape="rect">
Configuration.honorAutoEager(true)</a>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.enableClasspathModules">Ignore modules on classpath</a>
</h3>
<em>Jan 5 '09; API spec. version: 1.56; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach</em>
<br>
<p>
One can decide to <b>not</b> include modules on classpath in the test
by calling
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#enableClasspathModules-boolean-" shape="rect">
Configuration.enableClasspathModules(false)</a>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.enableModulesForCluster">Enable modules in a cluster</a>
</h3>
<em>Dec 20 '08; API spec. version: 1.55; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=153624">
#153624</a></em>
<br>
<p>
It is now possible to easily enable modules in one cluster due
to <a href="org/netbeans/junit/NbModuleSuite.Configuration.html#enableModules-java.lang.String-java.lang.String-" shape="rect">
Configuration.enableModules</a> method.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.clustersMulti">NbModuleSuite's clusters method can be called multiple times</a>
</h3>
<em>Dec 20 '08; API spec. version: 1.55; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=153624">
#153624</a></em>
<br>
<p>Semantics of
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#clusters-java.lang.String-" shape="rect">
Configuration.clusters</a> method has been extended. It can now be
called multiple times to accumulate the results.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="Log.assertInstancesWithNames">Log.assertInstances can take list of names one is searching for</a>
</h3>
<em>Aug 8 '08; API spec. version: 1.53; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: mrkam</em>
<br>
<p>Enhanced version of
<a href="org/netbeans/junit/Log.html#assertInstances-java.lang.String-java.lang.String...-" shape="rect">
assertInstances(String msg, String... types)</a> added.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="RandomlyFails">Added <code>@RandomlyFails</code></a>
</h3>
<em>Jun 19 '08; API spec. version: 1.51; affected top-level classes: <a href="./org/netbeans/junit/RandomlyFails.html"><code>RandomlyFails</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=137069">
#137069</a></em>
<br>
<p>
New annotation added to easily mark tests
which occasionally fail for no particular reason.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.Configuration.reuseUserDir">NbModuleSuite.Configuration.reuseUserDir(boolean reuse)</a>
</h3>
<em>Jun 18 '08; API spec. version: 1.52; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: mrkam</em>
<br>
<p>NbModuleSuite.Configuration now has
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#reuseUserDir-boolean-" shape="rect">reuseUserDir(boolean)</a>
method which enables test suite to reuse userdir from previous suite run.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.Configuration.addTest">NbModuleSuite.Configuration.addTest(Class &lt; ? extends Test&gt; test)</a>
</h3>
<em>Jun 11 '08; API spec. version: 1.51; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jsedek</em>
<br>
<p>NbModuleSuite.Configuration now has
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#addTest-java.lang.Class-" shape="rect">addTest(java.lang.Class)</a>
method which allows to add Test implementation classes into configuration
and execution of the NbModuleSuite.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.emptyConfiguration">NbModuleSuite.emptyConfiguration()</a>
</h3>
<em>Jun 10 '08; API spec. version: 1.51; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach</em>
<br>
<p>NbModuleSuite now has
<a href="org/netbeans/junit/NbModuleSuite.html#emptyConfiguration--" shape="rect">emptyConfiguration()</a>
method which returns empty, ready to be configured configuration.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.MultiTestCases">NbModuleSuite can now wrap multiple TestCase</a>
</h3>
<em>Jun 3 '08; API spec. version: 1.50; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach</em>
<br>
<p>NbModuleSuite.Configuration now has
<a href="org/netbeans/junit/NbModuleSuite.Configuration.html#addTest-java.lang.Class-java.lang.String...-" shape="rect">addTest(clazz, tests)</a>
method which allows to add multiple test classes into single configuration
and execution of the NbModuleSuite.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite.allModules">New Utilitity methods in NbModuleSuite</a>
</h3>
<em>Jun 3 '08; API spec. version: 1.49; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach</em>
<br>
<p>Shura requested few new methods to simplify creation of
<code>NbModuleSuite</code>'s. Added, <code>allModules</code> and
another variant of <code>create</code> to complement the general
customization with <code>NbModuleSuite.Configuration</code>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="NbModuleSuite">Support class to allow excution of unit tests inside of NetBeans Runtime Container</a>
</h3>
<em>Feb 29 '08; API spec. version: 1.46; affected top-level classes: <a href="./org/netbeans/junit/NbModuleSuite.html"><code>NbModuleSuite</code></a>; made by: jtulach</em>
<br>
<p>
It always used to be hard to setup the right environment for test
execution. In case this NetBeans this is even harder. The module
system is ready to work without classpath isolation, however
not every feature is available and not every
behavior remains the same
That is why there is now the new <code>NbModuleSuite</code>
support class that allows to really start the whole NetBeans
Runtime Container, satisfy all the dependencies and only then
load the testing class and execute it.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="CollectData">Support for Garbage Collecting of Log Message Arguments</a>
</h3>
<em>Dec 14 '07; API spec. version: 1.44; affected top-level classes: <a href="./org/netbeans/junit/Log.html"><code>Log</code></a>; made by: jtulach</em>
<br>
<p>
Methods <code>enableInstances</code> and
<code>assertInstances</code> added to <code>Log</code> class to
simplify writing memory leaks tests integrated with
<a href="http://wiki.netbeans.org/wiki/view/FitnessViaTimersCounters" shape="rect">timers/counters</a> infastructure.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="PreferencesForTests">Default implementation of Preferences isn't used for running tests anymore</a>
</h3>
<em>Oct 13 '06; API spec. version: 1.38; affected top-level classes: <a href="./org/netbeans/junit/NbTestCase.html"><code>NbTestCase</code></a>; made by: rmatous</em>
<br>
<p>
Not persistent implementation of <code>java.util.prefs.Preferences</code>
is installed in place of the platform-specific default implementation for running tests.
See document
<a href="../org-openide-util/org/openide/util/doc-files/preferences.html" shape="rect">Preferences in NetBeans</a>
to learn more.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="MockServicesAndLookup">Added class <code>MockServices</code></a>
</h3>
<em>Jun 30 '06; API spec. version: 1.33; affected top-level classes: <a href="./org/netbeans/junit/MockServices.html"><code>MockServices</code></a>; made by: jtulach</em>
<br>
<p>
The MockServices class now supports closer cooperation
with <code>Lookup</code>. By default, clients listening to
<code>Lookup.Result</code> changes will be notified about
change in its content whenever one calls <code>MockServices.setServices</code>.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="MockServices">Added class <code>MockServices</code></a>
</h3>
<em>May 11 '06; API spec. version: 1.30; affected top-level classes: <a href="./org/netbeans/junit/MockServices.html"><code>MockServices</code></a>; made by: jglick</em>
<br>
<p>
Added new utility to help unit tests create mock implementations
of global services for lookup.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="controlFlow">Non-deterministic execution can be made deterministic</a>
</h3>
<em>Apr 1 '06; API spec. version: 1.28; affected top-level classes: <a href="./org/netbeans/junit/NbTestCase.html"><code>NbTestCase</code></a> <a href="./org/netbeans/junit/Log.html"><code>Log</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=35067">
#35067</a></em>
<br>
<p>An excelent tool to emulate race condition, deadlock or any other
non-deterministic behaviour created in the form of
<a href="org/netbeans/junit/Log.html#controlFlow-java.util.logging.Logger-java.util.logging.Logger-java.lang.String-int-" shape="rect">
Log.controlFlow</a> method.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="logging"> Added support for logging</a>
</h3>
<em>Apr 1 '06; API spec. version: 1.27; affected top-level classes: <a href="./org/netbeans/junit/NbTestCase.html"><code>NbTestCase</code></a> <a href="./org/netbeans/junit/Log.html"><code>Log</code></a>; made by: jtulach; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=35067">
#35067</a></em>
<br>
<p>Added two ways how to enable logging in a test case. One can
either overwrite <a href="org/netbeans/junit/NbTestCase.html#logLevel--" shape="rect">NbTestCase.logLevel</a>
method and return the right level to capture in the test and then
all the messages logged with the level and greater will be sent
to <a href="org/netbeans/junit/NbTestCase.html#getLog--" shape="rect">NbTestCase.getLog()</a>
stream which is placed in working directory.
</p>
<p>
Or one can directly call
<a href="org/netbeans/junit/Log.html#enable-java.lang.String-java.util.logging.Level-" shape="rect">Log.enable</a>
to capture all the logging into a <code>CharSequence</code>
which can be later queried for its content, usually by calling <code>its.toString()</code>
method.
</p>
<hr>
<p><span class="footnote">Built on September 14 2018.&nbsp;&nbsp;|&nbsp;&nbsp; Copyright &#169; 2017-2018 Apache Software Foundation. All Rights Reserved.</span></p>
</body>
</html>